Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
fleabitdev
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
61.
▲
by
fleabitdev
5y ago
Thanks for writing these updates, Raph - back in 2019, your early piet-gpu blog posts helped to reignite my interest in 2D rendering. I recently learned that you also invented Cairo's trapezoidal-coverage algorithm, which was my origin
62.
▲
by
fleabitdev
5y ago
And it's all MIDI, running on a 24-voice synthesiser with a 470-kilobyte sample bank. Whenever I'm composing, and I'm tempted to be perfectionist about instrument fidelity or mixing quality, I listen to some Uematsu tracks th
63.
▲
by
fleabitdev
5y ago
I recently experimented with Rust's std::simd library prototype, and it gave me the same sense of wasted potential. My program performed complicated processing of large 8-bit grayscale images. Naive use of portable SIMD made several im
64.
▲
by
fleabitdev
5y ago
Windows uses a similar polling-based approach, with a warning that you shouldn't poll for new gamepads every frame for performance reasons: https://docs.microsoft.com/en-us/windows/win32/xinput/getti
65.
▲
by
fleabitdev
5y ago
Exactly what I was looking for, thanks! :)
66.
▲
by
fleabitdev
5y ago
Reading that blog post, I was surprised to learn that many modern games dedicate more than half of their filesize to textures. I haven't played an AAA game in more than a decade, but I would have thought that meshes and (particularly)
67.
▲
by
fleabitdev
5y ago
I've dealt with image decoding for a game engine before. The images in question were large pixel-art texture atlases, stored as PNG files and loaded at startup. Their slow decoding speed caught me by surprise, given that the file forma
68.
▲
by
fleabitdev
5y ago
This is quite a good example of the hard limitations of high-quality sampling. If you composed a violin melody line which absolutely needed a fast attack, Kontakt (a £359 library) would give you: - A "sustain" articulation with fa
69.
▲
by
fleabitdev
5y ago
The most "GM-like" experience I've encountered in a modern commercial product is the Kontakt factory library. It has almost complete General MIDI 1 coverage, plus a handful of random additions (a dozen electric pianos, sample
70.
▲
by
fleabitdev
5y ago
First things first: congratulations on your success! You seem to have single-handedly lit a fire under the Rust gamedev ecosystem :) When I heard about Bevy last year, I was skeptical that game developers could achieve good iteration times
71.
▲
by
fleabitdev
6y ago
I'm developing a big-pixel retro platformer game. Rather than the traditional power-of-two tile sizes, I ended up going for 36x36 tiles. It's much easier to draw repeating patterns when tiles can be evenly divided into halves, thi
72.
▲
by
fleabitdev
6y ago
How do you compensate for the lack of type-dependent name resolution? MyModule.foo(my_t) seems verbose, compared to my_t.foo()
73.
▲
by
fleabitdev
6y ago
Sounds like an interesting approach - can you point me towards any open-source code written in this style?
74.
▲
by
fleabitdev
6y ago
Hotloading is a near-future goal in the project's roadmap. There are some initial notes here, if you're curious: https://github.com/fleabitdev/glsp/issues/10 Thanks to the last 25 years of improveme
75.
▲
by
fleabitdev
6y ago
But the * suffix marks functions which might stagger their execution over multiple frames. If a function calls fire-arc* , then that function should also have the * suffix; otherwise, the suffix would be meaningless. You're asking for
76.
▲
by
fleabitdev
6y ago
Very good point! I'm caught between a rock and a hard place... Apart from their other downsides, stackful coroutines can make asynchronous code less readable. For example, it's not obvious that your self:move() call is split acros
77.
▲
by
fleabitdev
6y ago
Genuinely interesting suggestion! I used Lua coroutines, Python generators and Ruby fibers as my prior art; in all three cases, they're resumed by invoking a method on the coroutine object. A lambda function which resumes a coroutine c
78.
▲
by
fleabitdev
6y ago
The pros are summarised here: https://gamelisp.rs/reference/introduction-for-rust-programm... The main cons would be the lack of LuaJIT, the lack of C or C++ bindings, and the fact that Lua is spectacularly more mature
79.
▲
by
fleabitdev
6y ago
Thanks for your interest! The new reference manual for version 0.2 (which I'll release within a few days) discusses Bevy specifically. Short version: GameLisp isn't a natural fit for a multithreaded ECS, but it's possible to
80.
▲
by
fleabitdev
6y ago
Hello! I'm the developer of GameLisp :) You're correct that I've chosen safety and convenience over performance. I might eventually consider integrating the Cranelift code generator to try to achieve LuaJIT-like performance,
81.
▲
by
fleabitdev
6y ago
Hi folks - I made this :) The initial release was only two days ago, after working on the language on-and-off for several years. Happy to answer any questions!
82.
▲
by
fleabitdev
6y ago
Because the glsp crate and all of its dependencies are pure Rust code, a game engine which uses GameLisp can be compiled directly into WebAssembly. The playground is implemented in about 300 lines of Rust and about 900 lines of vanilla Java
83.
▲
by
fleabitdev
6y ago
Hi folks! I very recently released GameLisp, a game scripting language for Rust, after working on it on-and-off for several years. The language has some innovations in its garbage collector, its object system and its Rust API which I hope y
84.
▲
Show HN: GameLisp, a scripting language for Rust game development
(gamelisp.rs)
5 points
by
fleabitdev
6y ago
|
4 comments