Skip to content

Instantly share code, notes, and snippets.

@blockspacer
Last active January 23, 2020 20:49
Show Gist options
  • Save blockspacer/809d116e2ff50f88a79d5065da82d89c to your computer and use it in GitHub Desktop.
Save blockspacer/809d116e2ff50f88a79d5065da82d89c to your computer and use it in GitHub Desktop.
gd

== TODO == create db like https://github.com/lehast22/lehast22.github.io

  • add pdf version
  • add preview image
  • read from JSON

== optimize ==

  • optimize=speed
  • module_webm_enabled=no
  • builtin_bullet=no
  • disable_advanced_gui
  • Stripping binaries
  • Enabling link-time optimization use_lto=yes
  • scons p=windows --help

https://godotengine.org/qa/39550/how-to-reduce-android-apk-size-reduce-startup-time-too https://docs.godotengine.org/ru/latest/development/compiling/optimizing_for_size.html

== /tutorials == https://docs.godotengine.org/en/3.1/tutorials/

==timestep== https://www.gamedev.net/blogs/entry/2265460-fixing-your-timestep-and-evaluating-godot/

==godotengine.org blog== https://godotengine.org/article/godot-32-will-get-pseudo-3d-support-2d-engine

== r/godot == https://www.reddit.com/r/godot/comments/aofyfy/weekly_rgodot_discussion_thread_share_your/

==community== https://godotengine.org/community https://vk.com/topic-70467171_36555103 https://dtf.ru/flood/18165-discord-servery-o-geymdeve-i-cg

== git == https://github.com/topics/godot https://gitlab.com/explore/projects?tag=godot

== LOD == https://www.reddit.com/r/godot/comments/at93nh/does_godot_3_support_lod/ https://github.com/leiget/LOD-Simple-Example/blob/d84b5e87fc58858f2accfcc3aaa404baba280f6e/scripts/LOD_Mesh.gd#L19

== godot tuts == Godot site:gamedev.net https://github.com/Calinou/awesome-godot https://lehast22.github.io/ http://kidscancode.org/blog/tags/godot/ https://agameamonth.net/a-game-a-month-2-godot-platformer/ https://github.com/mohapsat/godot_sandbox/tree/3d57cc818a04af8d2c311e20211124366d849ba3/demo/Godot3_Samples https://github.com/GDquest/Godot-engine-tutorial-demos https://github.com/TutorialDoctor/TD-Godot-3-Demos http://fede0d.github.io/ https://github.com/rdcklinux/godot-docs/wiki/tutorial_singletons https://github.com/kidscancode/godot_recipes https://godot-engine.zeef.com/?query=Godot%20Engine&in=all https://www.reddit.com/r/godot/comments/an0iq5/godot_tutorials_list_of_video_and_written/ https://www.reddit.com/r/godot/comments/8vh4u7/looking_for_godot_3_tutorials/ https://youtu.be/BNU8xNRk_oU https://youtu.be/j_pM3CiQwts https://godot-engine.zeef.com/andre.antonio.schmitz https://pagefault.se/godot/2018/06/05/gdscript-the-wonders-of-yield/ https://coderwall.com/p/owym9g/yield-always-return-from-the-function-in-godot https://github.com/BastiaanOlij/godot3_test_projects https://github.com/GDquest/godot-open-rpg https://github.com/GDquest/godot-metroidvania-2d

== code snippets == https://github.com/willnationsdev/godot-next#classes https://github.com/ScyDev/Godot-Scripts/blob/master/polygon-merge.gd https://github.com/Gulkbag/GodotShaderCollection https://github.com/lettier/3d-game-shaders-for-beginners

== unit test == https://github.com/bitwes/Gut

== plugins == https://github.com/vnen/godot-tiled-importer

== background_load == https://github.com/godotengine/godot-demo-projects/tree/master/misc/background_load

== network == https://github.com/godotengine/godot-demo-projects/tree/master/networking https://github.com/gd-com/examples https://github.com/alfredbaudisch/GodotPhoenixChannels/blob/719ff5675894bbf269661b07ba2543e46627d2a6/Phoenix/Scripts/Socket.gd#L79 https://github.com/Faless/WebRTCNative/blob/master/SConstruct https://www.reddit.com/r/godot/comments/bux2hs/how_to_use_godots_high_level_multiplayer_api_with/ https://www.gamedev.net/blogs/entry/2267484-making-a-discord-bot-with-godot-part-one/ https://www.youtube.com/watch?v=rMnUVm-4fEw https://www.youtube.com/watch?v=1PHNj2Mitg8

==multiplayer misc== https://gitlab.com/yethiel/rc-carnage https://gitlab.com/rcorre/lichcraft/blob/master/game/game.gd https://github.com/red-eclipse/base/blob/524d6f688c61d2262ed91295523cba9ff45a3661/src/CMakeLists.txt#L99 https://github.com/SuckerServ/suckerserv/blob/suckerserv-v5/src/engine/server.cpp & http://wiki.piernov.org/en:suckerserv:start http://quadropolis.us/node/2525

== examples == https://github.com/shindig-games/astral https://github.com/tnibert/Panzer-Deathmatch-3D https://github.com/KOBUGE-Games https://github.com/Veraball/veraball https://github.com/Garydos/jump-sword-dash https://github.com/Calinou/fps-test https://github.com/vkbsb/godot_dts https://github.com/oxben/TowerDefense

== agones == https://github.com/nikibobi/godot-agones https://github.com/nikibobi/godot-agones-server

== Docker == https://github.com/aBARICHELLO/godot-ci https://github.com/godotengine/build-containers

==cloth== https://gitlab.com/frankiezafe/SoftSkin-demo

==water== https://www.gamedev.net/blogs/entry/2266519-playing-with-water-physics/ https://www.youtube.com/watch?v=DZRdwaknYfk https://github.com/fire/godot-realistic-water https://gitlab.com/ringtechsolutions/godot-tools/hydro/hydro

==sound== https://gitlab.com/frankiezafe/gdosc

== glTF == https://github.com/karroffel/godot-glTF2-plugin

== OMG == https://github.com/GDquest/godot-slides https://github.com/godotengine/godot-blender-exporter https://github.com/godotengine/tps-demo https://github.com/Zylann/godot_voxel https://www.gamedev.net/blogs/entry/2265460-fixing-your-timestep-and-evaluating-godot/ https://github.com/binogure-studio/godot-error-handler https://github.com/binogure-studio/chart-gd

==trello== https://trello.com/b/x1GjbG0Y/godot-syllabus

== gdscript docs == TODO

== Style Guide == https://gitlab.com/godot-stuff/gs-style

== ECS ==

TODO:

== actors ? ==

== navmesh == https://github.com/godotengine/godot-demo-projects/tree/master/3d

== ik == https://github.com/godotengine/godot-demo-projects/tree/master/3d

== Run automated tests for your Godot game on CI == https://saltares.com/blog/games/run-godot-tests-ci-travis/ https://godotengine.org/article/godot-project-management-101 https://www.reddit.com/r/godot/comments/89cu19/exporting_and_publishing_your_games_automagically/ https://github.com/godotengine/godot-tests

== rendering == https://www.reddit.com/r/godot/comments/bnugvj/would_a_solo_or_mmo_rpg_possible_on_godot/ Lack of occlusion culling ? https://github.com/vblanco20-1/godot/blob/4ab733200faa20e0dadc9306e7cc93230ebc120a/servers/visual/visual_server_scene.cpp#L387 No LOD support for: static meshes skeletal meshes animations particles anything really No terrain system No foliage system Lack of support for deferred rendering Seemingly lower limit of polys than other engines + render threads + shadows + mesh batcher / instancing + open world GI + Proxy meshes + Automatic mesh instancing + Auto LODs + wire frame shader: visual shader that allows Godot users to aim the LOD poly count; probably make it a wire frame shader. + Sprite batching + better data structures godotengine/godot#23998 + ECS fork godotengine/godot#23998 (comment) + Godot bans the STL containers, and its C++03. This means it does not have move operators in its containers godotengine/godot#23998 (comment) + c++11 Return value optimization (Copy elision) performance https://shaharmike.com/cpp/rvo/#performance + c++17 Guaranteed Copy Elision https://jonasdevlieghere.com/guaranteed-copy-elision/ + Use std::string_view to avoid string copy in C++17 https://zpjiang.me/2018/09/16/use-string-view-to-avoid-copy-cpp17/

== performance measure == https://github.com/2shady4u/gdscript-performance

== video == https://github.com/Calinou/godot-video-rendering-demo

== settings == https://github.com/Calinou/godot-settings-manager-demo

== GUI == https://github.com/Calinou/godot-7guis

== Behavior tree ? ==

== Decals ? == on roadmap

== Occlusion in real-time ? == on roadmap

== 4.0 update == https://github.com/godotengine/godot/milestone/9

== Scalable Realtime Global Illumination == godotengine/godot#31289 https://roblox.github.io/future-is-bright/compare.html https://news.ycombinator.com/item?id=9982170 NOTE: requires Deferred pipeline, may work in WEBGL >= 2 http://publications.lib.chalmers.se/records/fulltext/256137/256137.pdf

== open world GI ? == HOT https://www.gdcvault.com/play/1026469/Scalable-Real-Time-Global-Illumination https://www.youtube.com/watch?v=8wCeWwXcoLc HOT http://jcgt.org/published/0008/02/01/paper-lowres.pdf HOT https://github.com/jose-villegas/VCTRenderer HOT https://github.com/Gforcex/OpenGraphic#svo HOT https://blog.csdn.net/fancyvin/article/details/78918403 HOT https://kevinyu.net/2019/01/30/soul-engine-devlog-jan2019/ && https://github.com/kevyuu/soul/commits/master https://pdfs.semanticscholar.org/fc43/9b7956d0d76db1452fda070c961a7fa56a18.pdf https://www.gamedev.net/forums/topic/702924-what-gi-is-usable-right-now/ https://www.youtube.com/watch?v=_3-Pvnuyq0c https://morgan3d.github.io/articles/2019-04-01-ddgi/overview.html https://www.gamedev.net/forums/topic/702924-what-gi-is-usable-right-now/ https://twvideo01.ubm-us.net/o1/vault/gdc2019/presentations/Hobson_Josh_The_Indirect_Lighting.pdf https://80.lv/articles/generation-zero-behind-the-scenes/ https://www.frontiersin.org/articles/10.3389/fict.2019.00007/full https://scholar.google.com/scholar?as_ylo=2018&q=voxel+illumination&hl=en&as_sdt=0,5 TODO http://www.makinggames.biz/feature/which-global-illumination-technique-is-best-for-your-game,9520.html http://procworld.blogspot.com/ https://hugoam.github.io/toy-io/3months.html https://wickedengine.net/2017/08/30/voxel-based-global-illumination/ http://raytracey.blogspot.com/ http://s1.pearlcdn.com/pearlabyss/publications/Practical%20Dynamic%20Lighting%20for%20Large-Scale%20Game%20Environments.pdf https://fenix.tecnico.ulisboa.pt/downloadFile/281870113703783/Dissertation-Final-73465.pdf

== GODOT RENDERER == https://godotengine.org/article/godot-3-renderer-design-explained Unity added its programmable render pipeline. Godot has the same kind of functionality through the ability to make custom render servers.

== culling GL == https://stackoverflow.com/a/23428113 https://bazhenovc.github.io/blog/post/gpu-driven-occlusion-culling-slides-lif/ https://community.khronos.org/t/occlusion-culling-by-the-cryengine-way-understanding/76426 https://www.gamesindustry.biz/articles/2016-12-07-overview-on-popular-occlusion-culling-techniques HOT https://pdfs.semanticscholar.org/2330/05198c63fd754070bd987e865e76568e3b1b.pdf http://www.cs.unc.edu/techreports/02-039.pdf HOT https://github.com/GameTechDev/MaskedOcclusionCulling HOT godotengine/godot#22048 https://is.muni.cz/th/o2uja/thesis.pdf HOT http://www.dca.fee.unicamp.br/projects/mtk/batageloM/ && http://www.dca.fee.unicamp.br/projects/mtk/batageloM/batagelo-wu-2002-cgf.pdf https://users.csc.calpoly.edu/~zwood/teaching/csc572/final12/iseletsk/ https://forum.aurasoft-skyline.co.uk/viewtopic.php?f=9&t=1427

== deferred-shading-and-the-g-buffer == https://github.com/Calinou/tesseract-renderer-design#deferred-shading-and-the-g-buffer

== simple voxel lights == https://0fps.net/2018/02/21/voxel-lighting/

== Quest system ? == https://github.com/MinetestForFun/quests

== C++ == HOT https://kevinyu.net/2019/05/28/c-11-atomics-and-concurrency-memory-model/

== HOT == https://github.com/UglySwedishFish/Open7Days https://github.com/topics/voxel?l=c%2B%2B&utf8=%E2%9C%93

== LearnOpenGL == https://github.com/Calinou/learnopengl https://github.com/Overv/Open.GL/blob/master/ebook/Modern%20OpenGL%20Guide.pdf

=== DOD == Data-Oriented Design: Software Engineering for Limited Resources and Short Schedules http://freecomputerbooks.com/Data-Oriented-Design.html

@blockspacer
Copy link
Author

Godot 3 - Tutorial - GUI windows that can be dragged
https://www.youtube.com/watch?v=__8MkpJjMGY

Godot Engine: Soft Body Simulation Effect (GDScript)
https://www.youtube.com/watch?v=Ctpss30thVk

Godot Grass shader tutorial
https://www.youtube.com/watch?v=uMB3-g8v1B0

How to use Multimeshes in Godot
https://www.youtube.com/watch?v=NWDN5XTfQ0w

Recreating Fortnite's Building in Godot
https://www.youtube.com/watch?v=N21sXK_VDJs

GODOT 3D HORROR TUTORIAL #5 - Improve Path Finding using AStar
https://www.youtube.com/watch?v=zLIxn5W1Ibg

I made Fortnite's Building Grid in Godot
https://www.youtube.com/watch?v=njxUxgVLj8M

mesh based projected decals
https://github.com/Miziziziz/GodotProjectedDecals

Using LOD in Godot 3
https://www.youtube.com/watch?v=cy2eNuo2tCM

Godot 3.1 Grass Tutorial
https://www.youtube.com/watch?v=GLtdy3jiAp0

Godot Source Code Explained by the Lead Dev #1: Core (1/2)
https://www.youtube.com/watch?v=5RIPRlCvRAk

Signals with Godot Engine
https://www.youtube.com/watch?v=pM-ZELBmelo

godot mesh-based projected decals
https://www.youtube.com/watch?v=CFFZpmbhv6A

Envoy for Game Servers: Part 1 - Learning Envoy
https://www.youtube.com/watch?v=Op0bc9Xw7Iw

Visual Shader Editor in Godot 3.1: Dissolve Shader (tutorial)
https://www.youtube.com/watch?v=sf_Dc4ew3eM

3D Character Editor with Morphs and Wardrobe | Development Demo | Godot Game Engine
https://www.youtube.com/watch?v=MCezvN-e_kw

Ragdoll - new feature of Godot 3.1
https://www.youtube.com/watch?v=6TyRFk6dpU4

Godot 3: Global Illumination Quick Set-Up on Existing Scene
https://www.youtube.com/watch?v=jG1f3Cxopvc&list=PLw-0D8du8Q41KlYzSzwiqBFfrECNjDYJQ&index=41

#9 RPG на Godot Engine. Анимации движения персонажа (MakeHuman, Blender)
https://www.youtube.com/watch?v=cWZKG_d6Cww

Data Driven Entity Component System in C++17 - lecture by K.Kisielewicz - Code Europe Autumn 2017
https://www.youtube.com/watch?v=tONOW7Luln8

Godot 3.1 - Vegetation Plugin - Overview and Tutorial - Devlog #1
https://www.youtube.com/watch?v=rn4GX8JJECo

Animation Bootcamp: An Indie Approach to Procedural Animation
https://www.youtube.com/watch?v=LNidsMesxSE

@blockspacer
Copy link
Author

Mixamo, To Blender, To Godot Engine. Animation Pipeline for Rapid Prototyping.
https://www.youtube.com/watch?v=6SegCO3cZZE

Godot - First Person Controller Tutorial Part 6 - Stairs
https://www.youtube.com/watch?v=0BSlIpJ0wl8

Godot FPS Controller Tutorial #1 - Modelling, Rigging & Animating a character in Blender
https://www.youtube.com/watch?v=KlULMAkkJhE

Make an FPS in Godot (Part 3 - Interactable Objects)
https://www.youtube.com/watch?v=5YT4bFw9k4U

Godot 3D стрельба. Выстрелы Godot Engine
https://www.youtube.com/watch?v=cS3lkUwXckE&list=PLx43hQRhxNUPtzPBSrewwJyCJp7-4jyuZ&index=2&t=0s

Godot Quick Tip - How to use AnimationTrees
https://www.youtube.com/watch?v=WY2cN9uG6W8

REALISTIC Foot Placement Using IK in Unity
https://www.youtube.com/watch?v=rGB1ipH6DrM
https://github.com/b3agz/quick-bits/blob/master/realistic-foot-placement/IKFootPlacement.cs

Adding Root Motion and extra animations for your Characters in Godot
https://www.youtube.com/watch?v=3Hk9ljcS1Ro

Godot Game Tools v1.0.3 - Devlog#2 - MERGE MIXAMO ANIMATIONS - BLENDER / ROOT MOTION SUPPORT ADDED
https://www.youtube.com/watch?v=fzKitRyqAK0

Godot FPS Controller Tutorial #5 - Jumping & Crouching
https://www.youtube.com/watch?v=u8WJJfEJwdc

The basic idea is to have an IK node for each foot and hand, than I do the feet animation via gdscript, using raycasts to know where the feet should be in the terrain, moving the transforms that are followed by the IKs. I also have one capsule collider for each foot and I use just one kinematicbody for the character.

Mixamo, To Blender, To Godot Engine. Animation Pipeline for Rapid Prototyping.
https://www.youtube.com/watch?v=6SegCO3cZZE

Citizencon 2017: Teaching a character how to walk on any terrain
https://www.youtube.com/watch?v=PryJ3CpHcXQ

Inverse Kinematic tutorial in Godot - Inverse kinematic #4
https://www.youtube.com/watch?v=Q4o_7_Rh510

#0 Создание RPG игры с нуля на Godot Engine + Blender 2.80. Введение
https://www.youtube.com/watch?v=9akwHc_JE0g

Игровой движок Godot Engine 3D Интерактивные объекты #1. Открывающиеся двери в игре
https://www.youtube.com/watch?v=LdtzBs73fTw

How to use Multimeshes in Godot | Game Dev Tutorial 10
https://www.youtube.com/watch?v=NWDN5XTfQ0w

How to use Blender Shape Keys in Godot | Game Dev Tutorial 11
https://www.youtube.com/watch?v=ZJClHuIXRUM

3D Character Editor with Morphs and Wardrobe for Godot 3.2

Godot gltf2

I've gone though export bedevilment myself and I understand the horror you speak of. Fortunately, this just got WAY easier. Firstly, Collada and Better Collada are not the way--so stop using them, and don't look back.

In Blender 2.8, instead of using Collada, use "glTF 2" as your exporter.

First, select the objects you want to export form blender. Then File | Export | glTF 2
In the exporter, make sure you switch it from Binary to Embedded. Embedded is your friend.

Now in the exporter, check the box to only "export selected" (otherwise you'll export everything, though that could be what you want) AND turn on "apply modifiers". The other defaults are typically what you want. (Also, you should apply your scales and rotations first. And I HIGHLY suggest the origins of your mesh(es) and the origins of their controlling armatures are the exact same place in blender space.)

Export it to a folder in your Godot project you've made for just such a purpose (make something like "blenderImports", in your Godot project folder). Click the Export GLTF2.0 button at the top right. Sometimes this export take a few moments.

Now in Godot, open your new "scene", a .gltf file. Open it, click "open anyway" then save that scene as a native Godot scene in the .tscn format. Then forget about the .gltf file and work on the .tscn file from that point on.

Then, behold the glory: armatures come over, meshes come over, materials come over, Animations/actions come over (just make sure you use the little "push down" button in the NLA editor), it understands the blender Principled BSDF shader. (https://docs.blender.org/manual/en/latest/addons/io_scene_gltf2.html for documentation on what works in the Principled shader, normals come over.... angels sing!

Enjoy that everything just works. You're welcome.

https://github.com/smix8/Godot3DCharacterEditorWardrobe

Godot Engine - Multiple DAE animations inside a single scene
https://www.youtube.com/watch?v=Dx7FFxckCZ4

godot-engine-fps-project
weapons - deploy/holster animations, reloading, alternative fire modes, shotguns, also there is an example of sniper rfle (with scope), rifle with an underbarrel grenade launcher and akimbo guns
https://www.youtube.com/watch?v=hyxdJMmln8Y
https://github.com/HoboGus/godot-engine-fps-project

https://cgdownloads.com/download-laser-assault-rifle-3d-model-game-props-free/
https://cgdownloads.com/download-female-basemesh-1-0-game-ready-free/
https://cgdownloads.com/download-apc-military-vehicle-game-asset-3d-model-free/
https://cgdownloads.com/download-eisklotz-seamless-textures-in-4k-bundle-01-pbr-ready-free/
https://cgdownloads.com/download-parquet-maple-3-types-herringbone-linear-chevron-3d-model-free/
https://cgdownloads.com/download-mech-drone-3d-model-free/
https://cgdownloads.com/download-animated-wolf-3d-model-free/

Particle Soft bodies in Godot - Nvidia Flex #4
https://www.youtube.com/watch?v=ug99ys1IXAk

Godot VR Weapons tutorial part 6 - Ammo count, smoke trial and muzzle flash
https://www.youtube.com/watch?v=ERFCutI6mqc

Godot Recipe: Adding healthbars in 3D
https://www.youtube.com/watch?v=37hEX3Lrc0A

Make an FPS in Godot (Part 1 - Character Controller)
https://www.youtube.com/watch?v=UV-bhtb3734&list=PLiUQR4U_J9efMalyhB1DtqywA_HPg-FrR
https://github.com/codewithtom/godot-fps/tree/lesson-2

http://docs.godotengine.org/en/3.0/tutorials/3d/fps_tutorial/index.html

https://www.seedofandromeda.com/blogs/30-fast-flood-fill-lighting-in-a-blocky-voxel-game-pt-2

Setting up Godot 3.1 for Android development (tutorial)
https://www.youtube.com/watch?v=6646oo2YSBY

Godot Vehicle Tutorial
https://www.youtube.com/playlist?list=PLe63S5Eft1KapdW0-o824gCbG8LPvzxSA

Godot 3: Global Illumination Quick Set-Up on Existing Scene
https://www.youtube.com/watch?v=jG1f3Cxopvc

minetest pathfinder
https://github.com/minetest/minetest/blob/86d7f84b899a507e979f1845f2057cce6f84e743/src/pathfinder.cpp

SE Hierarchical pathfinding
https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/Sandbox.Game/Game/Screens/DebugScreens/Game/MyGuiScreenDebugAi.cs#L65

Godot's translation & localization features for game development.
https://www.youtube.com/watch?v=wVO71ZHhtys

@blockspacer
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment