HNHacker News
TopNewBestAskShowJobs

rednab

150 karma · joined June 13, 2014

Speaker to Machines and occasional artist.
submissionscomments
rednab··on Stride Game Engine 4.3 with .NET 10 Support
Recent versions of Unity are actually using Roslyn ¹) but they are admittedly running a bit behind on C# language version. The currently supported version is at 9 while 14 came out last month. It's not really a huge issue in practice, though.

With Godot 4, the big difference between Godot and Godot .NET is that the version with NET support does not build to web and mobile support is 'experimental' ²). Also, they are two completely separate downloads and editor binaries, which makes switching languages decidedly non-trivial.

For a 2D game, if you can live without building to web, I'd pick Godot. Otherwise, I'd pick Unity.

¹) https://docs.unity3d.com/6000.2/Documentation/Manual/csharp-...

²) https://docs.godotengine.org/en/latest/tutorials/scripting/c...

rednab··on Show HN: Built a desktop app to organize photos locally with duplicate detection
This may be a dumb question, but I couldn't figure it out from the website: Does this app allow me to actually view my photos? Can I double-click a filename? Can I get a page of thumbnails? Some sort of a gallery view?
rednab··on How to program a text adventure in C
As some of the other comments allude to, the term of art for text adventure is "interactive fiction".

The Interactive Fiction Wiki is a nice place to start:

https://www.ifwiki.org/Main_Page

And if you search for something like "interactive fiction tips" you'll find tons of resources.

rednab··on The weird afterlife of Xbox Kinect
the Kinect One is better in a bunch of ways (field of view, resolution) but a big one for certain use-cases is that it can fully track 6 skeletons.

The 360 Kinect can only track two skeletons (but differentiate 6).

rednab··on Kenney.nl: Free Game Assets
Ah, good to point out, yeah.

The 'no resale' clause is pretty common for asset packs, but unlike Kenney these definitely aren't CC0.

rednab··on Kenney.nl: Free Game Assets
Along the same lines: https://assethunts.itch.io/.
rednab··on Writing a C Compiler: Build a Real Programming Language from Scratch
Database Design and Implementation, ISBN 3030338355 ¹). Java source code for the SimpleDB system from the book available from the author's website ²).

¹) https://www.amazon.com/dp/3030338355/

²) http://www.cs.bc.edu/~sciore/simpledb/

rednab··on Show HN: Daminik – An Open source digital asset manager
You may want to list clearly somewhere which types of digital asset you support, because different industries have different ideas about that.

This only handles images, correct? And not video, audio, Office documents, PDFs, 3D models and animations, CAD/CAM drawings, PCB layouts, web pages, or code?

rednab··on Dijkstra's interview on Dutch TV (2000)
https://youtu.be/mLEOZO1GwVc?t=735

The Dutch language quote as displayed: "We mogen niet uit nonchalance fouten in een programma aanbrengen. Dat moeten we systematisch en met zorg doen.".

Feel free to run that through your favorite translator.

The subtitles: "We should not introduce errors through sloppiness but systematically keep them out."

The translator missed a very dry and very Dijkstra joke.

rednab··on Ask HN: 9-yo son wants to build a game, I'm lost. What can I do?
As others have also mentioned, the most important thing you can do is show interest and engage with your son and his ideas. And that really requires only your time and maybe a pencil and a bit of paper.

Figure out what kind of game this is and what part of the design process he's most interested in. Maybe it's not so much the game but he just wants to design cool game characters and have them walk around?

If you both do want to make a computer game, I think the various Make-A-Game games, many of which have already been mentioned, are your best bet. Game Builder Garage or Super Mario Maker (Switch), Wonderbox: The Adventure Maker (Apple), RPG in a Box or Super Dungeon Maker (PC), Roblox, whichever is the best match to your son's ideas.

Unlike some others here, I would recommend against switching to 2D. From a didactic perspective it absolutely would be the way to go as it makes a great many things a lot more manageable, but from experience you run a big risk of losing engagement and interest, especially as your son explicitly wants 3D. For a lot of kids in that age group, 2D just isn't cool.

I'd also recommend against full-blown development environments like Godot or Unity, at least until he's just a bit older. When he gets to that point, Unity does have some neat templates made especially for kids, where they get kind of a starter game and a walk-through on how to build it out.

Whatever you decide, have fun and good luck!

rednab··on Most Video Game Artwork Will Never Be Seen
The Simpsons Game (2007) on the 360 has an achievement for pressing the start button. It has a 93% completion rate.

So 7% of the people that bought this game (and being a console game, it never was part of any bundles) started it up and then did nothing.

rednab··on Ardour 8.0
Ardour is GPLv2 open-source, but they still do somewhat pointedly attempt to dissuade you from building from source ¹).

Now, I fully understand why. And I think charging for pre-built binaries is a totally valid way to attempt to finance an open-source project. The amount they're asking certainly is a pittance compared to the commercial offerings.

But LMMS just feels friendlier to me.

¹) https://ardour.org/building_linux.html

rednab··on Code Llama, a state-of-the-art large language model for coding
Interesting here and in some of the other comments in this thread is that 1 is not a prime number ¹)!

Now granted, that's more or less by definition and I don't doubt there's communities and fields where it is considered one, but still shows some of the subtleties at play when using language models.

¹) https://www.google.com/search?q=is+1+a+prime+number

rednab··on Stopping at 90%
The way I've explained this to coworkers and stakeholders is, "A prototype costs 1x, a product costs 3x, and a platform costs 9x."

Not exactly the definitions Brooks used, but memorable and in my experience surprisingly accurate.

rednab··on Ask HN: Recommend me a Blender course
Like many others, I heartily recommend the Donut tutorial as a start. It'll teach you the basics, get a handle on the most used shortcuts, and a feel for how the modifier keys (shift, alt, ctrl) work with the mouse. I also recommend that you print out a shortcut cheat sheet ¹).

That's just Blender, though. Learning modeling at least partly depends on what you want to model. Are you wanting to make models for 3D printing, for offline rendering/animated movies, or for real-time animation (aka games)? Do you want to make hard-surface objects, characters, landscapes? Are you purely interested in polygonal modeling, or also sculpting workflows?

If you don't already have some sort of a goal in mind, I would recommend you pick one. It'll make it much easier for you to work towards and if you share it, people might be able to recommend much more targeted courses.

¹) https://www.google.com/search?q=blender+shortcut+cheat+sheet...

rednab··on Lost something? Search through 91.7M files from the 80s, 90s, and 2000s
That kinda sounds like a version of XPilot ¹).

¹) https://en.wikipedia.org/wiki/XPilot

¹) http://www.xpilot.org

rednab··on Meta Quest Pro
And Nintendo sold 42 million Wii Balance Boards ¹). Compared to previous generations, Gen 9 console sales have been atrocious.

The Quest 2 might be a mainstream console, but it's not mainstream.

¹) https://en.wikipedia.org/wiki/Wii_Balance_Board#Reception

rednab··on A byte string library for Rust
These days C# has Span<byte> ¹) and ReadOnlySpan<byte> ²) which has a whole bunch of string-like methods, but the version of C# it requires might be newer than you're happy with.

¹) https://docs.microsoft.com/en-us/dotnet/api/system.span-1

²) https://docs.microsoft.com/en-us/dotnet/api/system.readonlys...

rednab··on Lisp in 99 lines of C and how to write one yourself [pdf]
If you want to make a Lisp specifically, I'd suggest starting with MAL: https://github.com/kanaka/mal#mal---make-a-lisp

If you want to build a programming language in general, I strongly recommend https://craftinginterpreters.com/

rednab··on Technical overview of Kandria, a game and game engine developed in Common Lisp
The bin packing problem is NP-hard, but rectangle packing is "merely" NP.

However, most people just use a recursive biggest-fit-first ¹), a simple heuristic that is surprisingly hard to beat for most workloads.

I couldn't figure out what Aseprite is doing from their website or documentation, but if it's not that then it might be worth it writing your own sprite packer.

¹) https://codeincomplete.com/articles/bin-packing/

rednab··on An engineer’s tips for writing documentation devs love
[I'm well aware of who I am replying to here, I'm merely taking the bait and providing some hopefully fun links for people to dig into. :)]

Because that's how Professor Wirth ¹) does it ²), because it allows for some interesting educational side-treks ³), and because the difference between a fictional and real microprocessor is smaller than some might think ⁴).

¹) https://people.inf.ethz.ch/wirth/index.html

²) https://people.inf.ethz.ch/wirth/CompilerConstruction/index....

³) "So what instruction would you add to this CPU to make the work we've been doing easier? Great, implement that instruction in the provided emulator."

⁴) https://people.inf.ethz.ch/wirth/FPGA-relatedWork/index.html

(edit: And, of course, there's FPGA implementations of Professor Knuth's MMIX (http://mmix.cs.hm.edu/), too: https://github.com/tommythorn/fpgammix)

rednab··on C#: IEnumerable, yield return, and lazy evaluation
The threading thing is a common requirement for game engines, though. Unreal also assumes engine functions are called only on the game thread (unless they're specifically marked otherwise).
rednab··on C#: IEnumerable, yield return, and lazy evaluation
Unity (the game engine, not the desktop environment) uses this concept heavily, although they use the slightly older IEnumerator instead of IEnumerable ¹).

It usually takes people a while to wrap their heads around it and (also hinted at in the article) forgetting to add "yield return" in front of an IEnumerator is a common mistake, but it is an awesome tool to flatten out callback hell or complicated every-frame checks.

¹) https://docs.unity3d.com/Manual/Coroutines.html

rednab··on Guide to implementing 2D platformers (2012)
Genshin [borrowed that mechanic from/was inspired by] another genre, namely fighting games¹).

And you got to admit, some (boss) fights in Genshin feel like they could come straight out of Soulcalibur.

So yeah, leading animations can definitely be a fun and interesting gameplay element, especially if you throw in cancels.

¹) https://streetfighter.fandom.com/wiki/Cancel

rednab··on Bungie C++ Guidelines and Razors
Apparently, Destiny 2 is 5.1 million lines of C++ code.

For comparison, Unreal Engine 4 is 2.3 million lines. ¹)

¹) https://www.perforce.com/blog/kw/unreal-engine-and-static-an...

rednab··on Six hundred and forty pages in fifteen months
For any Dutch folks wanting to purchase the book, it's also available on amazon.nl ¹), and appears to be cheaper there than the .com or .co.uk options, thanks to free shipping!

¹) https://www.amazon.nl/Crafting-Interpreters-Robert-Nystrom/d...

rednab··on Crafting Interpreters is available in print
I'm rather hoping you will sell out your print run, actually. :)

But to pile in with everybody else, congratulations!

rednab··on Crafting Interpreters is available in print
That's going to look awesome next to my copy of Game Programming Patterns! ... What do you mean "Temporarily Out Of Stock", amazon.co.uk!?
rednab··on XNect: Real-Time Multi-Person 3D Motion Capture with a Single RGB Camera
Unfortunately, it appears this technology is made available only for research purposes¹)/people with an institutional email address.

Which means that the best way for DYI mocap that I know of is still getting hold of an increasingly rare Kinect One.

¹) https://gvv-assets.mpi-inf.mpg.de/xnect/?page_id=12

rednab··on Is the MMORPG Dying?
MMORPG publishers stopped releasing even approximate subscriber numbers years ago, and the best you'll find with a Google query like "mmo subscriber numbers" are statistics almost a decade old, heavily footnoted with notices that numbers are educated guesses at best.

However, as far as anybody can tell, there is a definite downwards trend and the biggest player, World of Warcraft, has been hemorrhaging subscribers for years, currently down to an estimated 5.5 million from a peak of 12 million in 2010.¹)

It used to be that the MMO playerbase would migrate. A new MMO game would come out and everybody flocked to the new hotness, and if the game was any good, they'd stick. But World of Warcraft changed that. People still bought new MMOs as they came out, but they played them precisely as long as the number of months of free subscription included in the box, and then moved right back to WoW, leaving the challenger to wilt and eventually switch to a free-to-play model.

However, the droves that are leaving MMOs the last couple of year don't seem to be going to other MMOs, they just evaporate.

The people that enjoy raid-style content with a large multiplayer component probably end up in MOBAs²) like LoL (League of Legends) and DOTA (Defense of the Ancients), which offer all of the tension and drama of typical MMO end-game content without any of the boring grinding needed to unlock it. And according to Steam, DOTA 2 is the most played PC game in the world.³)

Others have moved to MMO-FPS games like The Division on PC and Destiny on consoles, and the rise of casual and mobile gaming coincides with the fall of MMORPGs. But as far as I can tell that still leaves millions of players that simply stopped playing.

My guess is that the world is just sick and tired of MMORPGs and I think it will take the death of WoW and a few years without any big MMO releases before a new generation of players can make any new MMO popular.

¹) https://www.statista.com/statistics/276601/number-of-world-o...

²) Multiplayer Online Battle Arena.

³) http://store.steampowered.com/stats/

Page 1 of 2Next →