4 ms·
Introduction to math for game developers
- hotdogscout 3y agoI wish there was something like Godot except with a code-centric workflow. Goldilock's Framework.
- boberoni 3y agoI've had success with using VS Code for editing GDScript files, instead of using the built-in editor for Godot. When I started using Git to track my Godot projects, I realized that all the scene files (.tscn) are just text files, and the Godot editor is a GUI for editing these text files. Scene files just store data: relationships between nodes and properties on each node. After this relevation, the whole system started to "click" for me and I started treating Godot game projects just like any other web app or mobile app that I work on.
- hotdogscout 3y agoI think your comment made the engine click for me too, wow, thank you. Do you know if there's a way to see the main update function? I have a hard time understanding what order the engine uses to runs each script.
- n42 3y agoI think you're looking for documentation on the SceneTree and "tree order". it really is a beautiful architecture when you dig into this and internalize it https://docs.godotengine.org/en/stable/tutorials/scripting/scene_tree.html https://docs.godotengine.org/en/stable/tutorials/scripting/s... https://docs.godotengine.org/en/stable/classes/class_scenetree.html#class-scenetree https://docs.godotengine.org/en/stable/classes/class_scenetr... https://docs.godotengine.org/en/stable/classes/class_mainloop.html https://docs.godotengine.org/en/stable/classes/class_mainloo...
- hotdogscout 3y agoI'm sorry for making you go through all that, should have looked into the documention before asking. Thank you. Godot really is the only game making software that has this artful feeling of beauty. Portable, always consistent, small. I usually give up on software in favor of frameworks because I don't know what's happening and the documentation is too daunting compared to just making my own thing but reading how godot's made is an exception.
- n42 3y agooh, it was a quick Google from memory because I've gone down the same path myself :)
- kajkojednojajko 3y agoThere's always the source :) It's easier to follow if you git clone and open it in vscode. Here's Main::iteration - https://github.com/godotengine/godot/blob/e0f644a48da49843ad63a06982af85f13783899c/main/main.cpp#L3297 https://github.com/godotengine/godot/blob/e0f644a48da49843ad...
- hotdogscout 3y agoIt's so understandable and succinct, I don't know why I thought I wouldn't understand the source. Thanks.
- batperson 3y agoCould you elaborate ? Does this require any specific setup?
- BHSPitMonkey 3y agoUnity is the same way (by default, scene and other files are stored on disk in a binary format, but you can toggle a project setting to make them text instead—which is a big help if you're using git).
- jasfi 3y agoWhat is it about Godot that you want? I've never used it.
- hotdogscout 3y agoShowing models and sprites, collisions, apply fragment/vertex shaders on specific objects, easy to include animations and apply easing functions, easy to edit placement of sprites and models with a GUI but everything else (using those functions as conditionals or to be rendered in the frame loop) done by explicit coding.
- mjcohen 3y agoThe cross product does exists in any number or dimensions (at least 2). In n dimensions, the cross product of n-1 vectors is the determinant with the axis vectors as the first row and each of the n-1 vectors as the next rows. In 3 dimensions, n=3, so the first row is (i, j, k) and the next 2 rows are the two vectors.
- nsajko 3y agoThat's just one possible generalization of the (three-dimensional) cross product. And not a commonly used one, I think?
- terrycody 3y agoI saved some bookmarks about this topic through the years, so let me paste below, maybe someone found sth is useful: http://mathfor3dgameprogramming.com/ http://mathfor3dgameprogramming.com/ https://gamemath.com/book/intro.html https://gamemath.com/book/intro.html https://www.neilwithdata.com/mathematics-self-learner https://www.neilwithdata.com/mathematics-self-learner https://www.cis.upenn.edu/~jean/math-deep.pdf https://www.cis.upenn.edu/~jean/math-deep.pdf https://www.youtube.com/watch?v=DPfxjQ6sqrc https://www.youtube.com/watch?v=DPfxjQ6sqrc
- treesciencebot 3y agoThe Math section as a whole seems very useful, especially for the self taught engineers (or people who need a quick memory refresh of the underlying subjects). The concepts are simplified enough that anyone with basic understanding of numbers can just jump in and learn what they might need regarding this particular field. I wonder whether something like this (albeit a little advanced, considering the field's depth) exists for machine learning?
- frfl 3y agoAndrew Ng's Coursera course "Machine Learning", probably fairly well know at this point, is fairly entry level and cover the basic math and theory of machine learning and some deep learning. If that answer your question. Although the content is probably a mix of video and pdf (exercise material) There's also "Grokking Machine Learning" by Serrano, which I haven't read, but seems relevant to your question as well > Discover valuable machine learning techniques you can understand and apply using just high-school math.
- hatthew 3y agoI don't think such a thing exists. Math for physical modeling for game dev is just the simpler aspects of linear algebra, which builds off of basic trig and algebra, stuff that most people learn by early high school. It's also simulating the real world, so it's easy to build intuition that way. ML math, depending on how far you want to go, builds off of statistics, probability, linear algebra, basic calculus, information theory. There's more things that it builds off of, and they're more advanced topics that people don't get as much exposure to without going out of their way. ML is usually a lot harder to build intuition about, since so much of it doesn't have real world analogies that can easily tie together the math with the application. There's a lot of individual pages scattered around the web that try to explain specific concepts in ways like this godot vector math page does (gradient descent tutorials come to mind), but there's no central repository or unified intuition because the scope is so broad. As the other guy mentioned, things like Andrew Ng's course are probably the best you're going to get if you want a decent understanding of the concepts.
- wanderingmind 3y agoProbabilistic Machine Learning by Kevin Murphy https://probml.github.io/pml-book/book1.html https://probml.github.io/pml-book/book1.html