godot-nim | specs | |
---|---|---|
16 | 13 | |
494 | 2,415 | |
0.0% | 0.7% | |
0.0 | 6.4 | |
over 1 year ago | 8 days ago | |
Nim | Rust | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
godot-nim
-
Plans for Nim bindings for Godot 4
Since Godot 4 is gonna change their binding system the previous Nim bindings are not gonna work and the maintainers stated that they wont adapt the bindings to Godot 4.
-
Plans for Nim bindings for Godot 4?
Since Godot 4 is gonna change their binding system the previous [Nim bindings](https://github.com/pragmagic/godot-nim)
-
Programming a Rogue-Like with Rust
Another option is Nim. Looks and writes like Python but closer to C in performance. It also has static typing so I prefer it for scripting as well.
People have built a few games with the Nim Godot bindings:
https://github.com/pragmagic/godot-nim
There’s also an interesting project to do hot reloading using dlls:
https://github.com/geekrelief/gdnim
-
Inky: Isolation. A 90 minute game built with Enu, Nim and Godot
Enu is a 3D live-programming/learning/game development environment written in Nim using Godot 3, godot-nim, and godot_voxel. I use it to run a small local coding club with a group of 12 year olds, and think it is (or at least will be) a great tool for learning to code, and for making games quickly.
-
Is Nim right for me?
It uses a python-like language, is free & open-source (MIT License), has a fantastic GUI creation system, exports to all major OS's, and produces single small binaries. You could eventually incorporate Nim as well, as there are Nim bindings for Godot.
- How can I understand what "bindings to" libraries really do?
-
FYI, you can use Rust as a native scripting language
Ant then install the bindings. And thats where I'm a bit lost even after reading Godot docs. Not sure if I'm right, but seems to be necessary to compile Godot?
-
Nim Version 1.6 Released
Well no language is perfect, but Nim can be used in almost every domain because of it's compilation targets(C, C++, JS) and it's fast compile times(who needs interpretation when compile times are that fast!):
* Shell scripting, I still assume most people will just use Bash tho: https://github.com/Vindaar/shell
* Frontend: https://github.com/karaxnim/karax or you could bind to an existing JS library.
* Backend: For something Flask-like: https://github.com/dom96/jester or something with more defaults https://github.com/planety/prologue
* Scientific computing: the wonderful SciNim https://github.com/SciNim
* Blockchain: Status has some of the biggest Nim codebases currently in production https://github.com/status-im?q=&type=&language=nim&sort=
* Gamedev: Also used in production: https://github.com/pragmagic/godot-nim and due to easy C and C++ interop, you get access to a lot of gamedev libraries!
* Embedded: this is a domain I know very little about but for example https://github.com/elcritch/nesper or https://github.com/PMunch/badger for fun Nim+embedded stuff!
Most of the disadvantages come from tooling and lack of $$$ support.
-
Frustrating ergonomics of GDNative in 3.3 -- are these addressed for 4.0?
As for gdnim, it's my framework built on top of godot-nim. https://github.com/pragmagic/godot-nim https://github.com/pragmagic/godot-nim-stub
-
PR for cross-language script class support is testable! (`class_name` feature for GDScript, VisualScript, C#, and NativeScript)
I've renewed my enjoyment of programming through game development (an area I haven't been active in before) and had a great time implementing a Quadtree in GDScript but then the other problem of raw execution speed for any script language made that a bit disappointing as well (it worked well but was only an improvement for larger numbers). So now I'm learning Nim (which has godot-nim bindings) to be able to write really performant code in an easy way.
specs
-
Why ECS pattern is popular in Rust?
The question arises from seeing a plethora of projects using ECS: hecs , Bevy , specs, legion
-
Want to learn how to make games with Rust and the Bevy game engine? Now is a great time to jump in with the recently released Bevy version 0.10. I created a Bevy 0.10 beginner tutorial video series for those looking to learn and join our game dev community!
Instead, I'm using now the specs Library. It's a pure ECS library and much less powerful, without any visualization capabilities, but its works for me :)
-
Is implementing an ECS in rust a bad idea for a beginner project?
writing an ECS is defined a challenging project, no matter the language or if you're a beginner. although it is entirely possible to write one in Rust, check out specs and bevy_ecs for examples.
-
Ecs fundamentally at odds with borrow checker.
specs
- Goggles - A specs-derived DIY library for doing ECS
-
Veloren is releasing 0.13!
The official 3d rendering client uses a custom engine called Voxygen. They use Specs for logic.
-
How are rust devs doing?
Rust has a delightful ECS library, specs, that I absolutely love. It has safe multi-threaded execution built right in, which is fantastic for the pretty parallelizable work I was doing. Concurrency in C++ is nasty business on the best of days, and I've run into so many nasty bugs with the custom system I've had to build out to fit the web's weird threading model.
-
Programming a Rogue-Like with Rust
Man, this Specs [0] library is so strange to me, coming from a Unity background. Is there some sort of comparison as to why one way is better than the other?
[0] https://specs.amethyst.rs/
-
Bellclone: a simple 2D game about jumping
Hi everyone - I just picked up one of my long-unfinished side project built with Rust and would like to show it to you here. It's a clone of the famous(?) Winterbells game. It's written entirely in Rust and uses OpenGL and an entity-component-system architecture ([the `specs` crate](https://crates.io/crates/specs)) (still learning), no game engine.
-
There are a *lot* of actor framework projects on Cargo.
Wait did the person at your company write specs or something else because they weren't pleased with it? I don't know much about amethyst and vaguely know about entity component systems but I watched a talk on someone making a game with amethyst and was pretty impressed -- it looked thoroughly approachable and I do not doubt the performance is there (since the whole reason you do ECS is performance).
What are some alternatives?
gdnim - godot-nim based bootstrapping framework supporting hot reloading
bevy - A refreshingly simple data-driven game engine built in Rust
pixie - Full-featured 2d graphics library for Nim.
Amethyst - Data-oriented and data-driven game engine written in Rust
nvim-treesitter-textobjects
ggez - Rust library to create a Good Game Easily
nlvm - LLVM-based compiler for the Nim language
Crayon - A small, portable and extensible game framework written in Rust.
enu - A Logo-like 3D environment, implemented in Nim
piston - A modular game engine written in Rust
httpbeast - A highly performant, multi-threaded HTTP 1.1 server written in Nim.
RG3D - 3D and 2D game engine written in Rust [Moved to: https://github.com/FyroxEngine/Fyrox]