![]() |
|
![]() |
| I like the idea of collaborative curation of quality web sources. I think it's a fundamentally hard problem, but my hunch is that many people do this anyway in some form or another. |
![]() |
| I agree with your observations. The time is just right for a Google search killer. There might be some AI in it, but the fundamental goal should be a massive increase of the SNR of search results. |
![]() |
| For me, this has been perplexity.ai. Give it a query, it expands that into multiple queries (possibly chained depending on results) and synthesizes the results into an answer with citations. |
![]() |
| My paranoia has grown from link hoarding to storing PDF dumps of sites that are really important to me. There've been so many times over the years that amazing resources just blip out of existence. |
![]() |
| Back in my days, Google worked. Now it is a waste of time. Someone that wants to hold himself to the notion that Google was/is good really looks like someone having issues getting old |
![]() |
| Google works very well as an alternative to knowing the exact link to something you already know exists and know how it's named.
But it has become very bad at _discovering_ valuable information. |
![]() |
| Even with Google, it's a difficult problem[1]. What if you have multiple items on the same tile? What if one of them is one pixel wide (e.g. a wall)? What if something in front of that tile is tall enough to block the view? What if you need pixel perfect collision?
My first solution (before the buildings in my game had multiple floors) was to take the ISO mouse position, grab a list of items within a cone spreading towards the screen, then: 1.) Loop through each item 2.) Create a sprite of the item (so I have direct access to RGBA info) 3.) Convert mouse coords to sprite coords 4.) Check if I'm hitting a pixel (i.e. alpha > 0) 5.) Keep track of this item 6.) Update if an item closer to the bottom of the screen (i.e. closer to camera) gets a hit Once I added building height, this became impractical (too many items to loop through, sprite creation is CPU intensive). New solution is to assign a 24 byte UUID to each item, convert that to RGB, draw it to the screen (invisible to the user), and then return a tiny texture every frame from the GPU at the mouse position. If the color in the texture is not black, then convert RGB back into the UUID. PS: If you know how to draw so that alpha replaces existing alpha (instead of blending), please let me know so I can have 32 byte UUIDs! [1] Source: I'm developing Metropolis 1998 https://store.steampowered.com/app/2287430/Metropolis_1998/ |
![]() |
| Shooting my shot here:
I developed a large-scale, 2D isometric tactical strategy game called Cantata: https://store.steampowered.com/app/690370/Cantata/ It's sort of like a 4X version of a smaller tactics game like Advance Wars. Supply lines, region capture, unique units, etc. It's isometric throughout, in part because I just love the aesthetics of pixel art isometric (having grown up on RTC, Age of Wonders, Simcity, Alpha Cen, Civ...). This article was (and is) still the gold standard on describing isometric math: https://clintbellanger.net/articles/isometric_math/ We built a custom renderer for the game as well to support doing lots of crazy tile-layering steps that mix and match Z-depths based on various factors like specific units, terrain type, terrain decoration type, etc. Things like: If a human soldier is on grass, the grass should be rendered on top of them, but if its a tank the grass "makes sense" to be under the tank, etc. Art assets were based around 64x64 size tiles, and as someone else pointed out we were technically dimetric instead of isometric (as were most isometric games, dimetric feels too uniform). |
![]() |
| Most "isometric" games are in fact "dimetric", i.e. follow a projection where 2 horizontal pixels match 1 vertical pixel when tracing straight horizontal or vertical lines. |
![]() |
| The horizontal edges are clearly measurable. The vertical (z) axis you are making a requirement that it has to show directly on top of a tile 1X and 1Y offset. That's on you. |
![]() |
| Gustavo is one of the best math and programming teachers out there imo. I am currently taking the Playstation course and it's so much fun. |
![]() |
| My daughter (12) is interested in learning coding. I think making games might be a way to keep her interested. Do you think his courses would be too advanced for a teen? |
![]() |
| I haven't taken it, but looking at the curriculum [0], the concepts covered are easily college level. This is very low level programming.
[0]: https://pikuma.com/courses/ps1-programming-mips-assembly-lan... If it was a few years later, I wouldn't be surprised if there were some courses for the recent Unreal Editor for Fornite that could ease a new programmer in as an interactive way to script, while learning a relevant industry tool (then again, it may also go the route of Roblox, so who knows?). Honestly, I'd defer to either mods or games with level editors as a way to help gauge how much a child would potentially enjoy programming. Then they could try sme visual scripting like Scratch to try and make something outside of that environment. |
![]() |
| Me too. It happens that I kept my Super Nintendo and play the game with my kid regularly. We have tons of fun. I still have the booklet where they say that they prerendered the graphics on "Silicon Graphics" computer, same that were used for Terminator.
I also remember as a kid saying to myself "wow, it's 3D, it's so realistic"
Booklet: https://imgur.com/a/6mUVpXm |
![]() |
| I used to say that video games do everything you might find in any other kind of software - only difference being, they do it 60 times a second. |
![]() |
| > Or a 3D game they swear was actually 2D?
Doom sort of fits in this category? The original[1] renderer cheated significantly in order to render the scene. It had to, for the hardware of the era. But it's not capable of arbitrary rooms/map layouts, and so, e.g., the maps are strictly 2D. IIRC, this is the reason the camera is locked on the pitch axis. Factorio is a 2D game, but the assets are 3D, sort of like the DK example. The fun comes in that the game is 2D grid of tiles (pretty normal) but not top down, and that causes some associated havoc when things try to rotate: https://www.factorio.com/blog/post/fff-133 [1]: many modern ports do, or can, use true 3D renderers, and are thus not quite the same as the original in this regard. Later ports are also capable of non-2D maps, including things like bridges and overlapping rooms that the OG renderer couldn't do. |
The sort of thing you'd solve in 30 seconds with Google in 2024.
The 2D tiles were rendered out of 3D Studio Max, and the characters were meshes exported from Max.
[0] https://www.youtube.com/watch?v=9UOYps_3eM0