Giter VIP home page Giter VIP logo

godot-blueprint's Introduction

[Project Template]

Software Kit

Blender Godot Engine Visual Studio Code Vim Audacity Git Gimp Gnu Image Manipulation Program Aseprite

Requirements

Software

Name Version Link
Godot 4.0 Download
VSCode 1.68+ Download

Reading

Source Link
Godot Documentation View

Folder Structure

|-- Addons
|-- Assets
	  |-- Editor
	  |-- Media
	  |   |-- Audio
	  |   |-- Video
	  |-- Sprites
	  |-- Models
	  |-- Materials
	  |-- Shaders
	  |   |-- Canvas
	  |   |-- Spatial
	  |   |-- Particle
	  |-- Fonts
	  |-- Scenes
	  |   |-- Levels
	  |   |-- Characters
	  |   |-- Other
	  |-- Scripts
	  |   |-- Editor
	  |   |-- DataObjects
	  |   |-- Managers
	  |   |-- Utilities
	  |   |-- Resources
	  |   |-- Other
|-- ExternalAssets
	  |-- Media
	  |   |-- Audio
	  |   |-- Video
	  |-- Sprites
	  |-- Models
	  |-- Materials
	  |-- Shaders
	  |-- Fonts
	  |-- Scripts
Folder Description
addons Store all addons/plugins in this folder.
media Store all audio and video files here.
sprites Store all 2D sprites here.
models Store all 3D models here.
materials Store all materials here.
shaders Store all spatial, canvas or particle shaders here.
fonts Store all font resources here.
scenes Store all scenes here.
scripts Store all scripts here.
scripts/editor For Editor specific scripts.
scripts/managers For singleton scripts used in Auto Loading.
scripts/utilities For utilty scripts used across the project.
scripts/resources Instances of DataObjects or other Godot resources.
external-assets This is a reflection of the Assets folder, but meant for external assets you want to keep seperate from your project .

Conventions

  • Use line feed (LF) characters to break lines, not CRLF or CR.
  • Use one line feed character at the end of each file.
  • Use UTF-8 encoding without a byte order mark.
  • Use Tabs instead of spaces for indentation.

See the Godot Style Guide for a full breakdown.

Name Rule Example
Variables Use snake case. Private variables start with an underscore. var _private_var: int
Functions Use snake case. Private functions start with an underscore. func _private_func():
Signals Use snake case. signal my_signal
Constants/Enums Use upper snake case. var MY_CONST
Folders Use kebab case. folder-name-here
Classes Use pascal case. class_name MyClass
Variable Declaration Always use : operator to create variables with a type. var my_variable: string = "my var"
Function Declaration Always use -> operator to specify function return type. func do_something(age: int) -> int:
Max Parameters A method should not have more than 5 parameters. -
No magic numbers or strings Do not use magic variables, rather define them as constant in a single location. -

Commit Structure

Please follow the Conventional Commits standards as well as squashing your commits into a single commit.

Specification can be found at www.conventionalcommits.org.

How to squash commits: https://www.git-tower.com/learn/git/faq/git-squash

Commits should be in the following form: type[optional scope]: description. Examples include:

feat: allow provided config object to extend other configs

feat(api)!: send an email to the customer when a product is shipped

docs: correct spelling of CHANGELOG

Type Title Emoji Release Description
feat Features โœจ minor A new feature
refactor Code Refactoring ๐Ÿ“ฆ patch A code change that neither fixes a bug nor adds a feature
perf Performance Improvements ๐Ÿš€ patch A code change that improves performance
fix Bug Fixes ๐Ÿ› patch A bug Fix
chore Chores โ™ป patch Other changes that don't modify src or test files
revert Reverts ๐Ÿ—‘ patch Reverts a previous commit
docs Documentation ๐Ÿ“š patch Documentation only changes
style Styles ๐Ÿ’Ž - Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
test Tests ๐Ÿšจ - Adding missing tests or correcting existing tests
build Builds ๐Ÿ›  patch Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
ci Continuous Integrations โš™ - Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
BREAKING CHANGE Breaking Change ๐Ÿ’” major When a breaking change occurs on the commit. Rather use the "!" operator in conjunction with a type.

godot-blueprint's People

Contributors

morneventer avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.