Skip to content

Directory Structure

Here’s the minimal main.go that you need to successfully launch a project:

package main
import "graphics.gd/startup"
func main() {
startup.Scene()
}

Start with a main.go file (or a few files) and gradually add internal packages as needed. Here’s the recommended directory structure to follow for a graphics.gd project:

  • Directoryproject_name/
    • Directorygraphics
      • project.godot
      • main.tscn
      • library.gdextension
      • .gitignore
      • export_presets.cfg
      • Directoryasset_category1
        • myimage.png
        • myshader.shader
      • Directoryasset_category2
        • myfont.ttf
        • myaudio.ogg
      • Directoryasset_category3
        • myscene.tscn
        • myscript.gd
    • Directoryinternal
      • Directorymypackage1
        • mypackage1.go
        • mypackage1_test.go
      • Directorymypackage2
        • otherlogic.go
        • mypackage2.go
    • Directoryreleases
      • Directorywindows
        • Directoryamd64/
        • Directoryarm64/
      • Directorylinux
        • Directoryamd64/
        • Directoryarm64/
      • Directorymacos
        • Directoryuniversal/
    • .gitignore
    • go.mod
    • go.sum
    • main.go