[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: images.jpg (28 KB, 444x450)
28 KB JPG
DirectX Game Engine Edition

/gedg/ Wiki: https://igwiki.lyci.de/wiki//gedg/_-_Game_and_Engine_Dev_General
IRC: irc.rizon.net #/g/gedg
Progress Day: https://rentry.org/gedg-jams
/gedg/ Compendium: https://rentry.org/gedg
/agdg/: >>>/vg/agdg
Graphics Debugger: https://renderdoc.org/

Requesting Help
-Problem Description: Clearly explain your issue, providing context and relevant background information.
-Relevant Code or Content: If applicable, include relevant code, configuration, or content related to your question. Use code tags.

previous: >>109167917
>>
File: revolt.jpg (100 KB, 1024x576)
100 KB JPG
>>109219142
I want to make a game engine like Re-Volt's engine
>>
File: thirteen_ragdolls.webm (3.25 MB, 1896x1060)
3.25 MB
3.25 MB WEBM
glitchy ragdolls
>>
>>109219142
PBR was a mistake. It makes every game look the same and it causes issues with MSAA.
Bring back non-physical techniques like Blinn-Phong. Use weird arbitrary non-physical artist-tweakable values in your lighting maths. Author your assets with the target lighting in mind. Bake your environment lighting, but do it with a crude DIY hacky basic raytracer and not with a nice clean physically-correct modern path tracer.
>>
>>109219240
>Bake your environment lighting
this. Everything looked so much better back then
>>
File: deferred shreking.jpg (90 KB, 561x800)
90 KB JPG
>>109219240
>PBR
>causes issues with MSAA.
MSAA was dead long before PBR. You can thank this green motherfucker.
>>
I need a networking solution for custom OpenGL game, Any recommendations?
>>
>>109220239
https://github.com/mas-bandwidth/yojimbo
>>
I don't really have strenght to be making video games
>>
>>109220254
I think I will go with ENet, thanks though
>>
>>109220239
Winsock?
>>
>>109219240
This, and deferred rendering too.
>>
File: :).png (11 KB, 1920x1080)
11 KB PNG
Finally got vulkan to draw a texture. The descriptor sets are a mess, gotta learn what that 'bindless' that people are talking about is.
>>
nobody bats an eye at a forced cis heterosexual relationship in a game, but one required homosexual kiss and every chud wants you cancelled
>>
>>109219240
PBR if just fine. The real issue is how post processing and HDR is handled. There’s a real why all these games have a foggy look to them.
>>
>>109223856
Use the new descriptor heap extension
>>
I’m using c++26. See ya losers later. With the help of my clanker I’m going to make a bleeding edge game engine.
>>
>>109225289
Godspeed Anon. I tried the new reflection capable g++ for a day or two. Jolt wouldn't compile because of a compiler bug. clangd wasn't able to parse reflection code. I'm back to C++23 now.
>>
how the FR*CK do you write a game engine with dataflow?
>>
>>109225383
Shit I plan on using Jolt. Is it something that can be worked around?
>>
>>109225392
whats dataflow?
>>
>>109225410
It's fixed in the upcoming gcc release.
>>
>>109225462
Thank god. 16.2 is coming next month. I love msvc but it’s crazy how it has like zero c++26 features.
>>
>>109225476
What do you use as LSP?
>>
I need to wrtie something in C++, preferably C++26
>>
>>109219142
remember how back in 2000s you could shit out anything 3D and it was considered cool and awesome?
>>
>>109219142
Bump, haven't been on 4 in quite a while, glad that /gedg/ is still alive, even if less active.
>>
>>109225852
what language is that
>>
>>109225880
You could convince me that it's C bastardized with macros.
>>
>>109225568
My toolchain is opencode + gpt 5.5, gcc 16.1 (obviously), cmake 4.3, and clion 2026.2 EAP (which supports c++26 syntax highlighting). However the clion syntax highlighter doesn’t play nicely with the std module (it tries to read from headers) so even though things compile it shows a bunch of errors when using anything from std. This is a known issue with clion and the workaround is in cmake to manually link the std module (and compat) as a static library and then disable compilation for it.

There’s also an issue with gcc where you can’t use std::format and its derivatives like print in two separate modules via import std; otherwise you get a multiple definitions error. So my logger (the only things that’s using format atm) needs a cpp file for function implementations that involve format, which is fine but annoying. I miss MSVC. I had zero issues with modules minus intellisense but I replaced that with the resharper. I also changed a bunch of clion settings so it looks and feels like visual studio.
>>
>>109225880
It's C with some GNU extensions, but they're not used in this part of the code, they're used in parser and OpenGL / OpenAL wrapper.
>>109225915
I avoid macros and entire preprocessor like hell, these are typedefs. I even use 'extern <declaration>;' instead of #include in some cases.
When I do use a macro, I either explicitly suffix it with '_macro', unless it's a simple '#define standard_output STDOUT_FILENO'.
I'm refactoring this old C project, it's a game engine for HoM&M3-like game. To be honest, got tired of Ada and assembly, want to have fun now.
---
You can see that I'm a verbosityfag because of Ada... At least I'm not aislopfag.
>>
>>109226115
There is a difference between "writing verbose code" and "pointlessly typedefing a whole bunch of shit for no gain, while making your code more aggressive towards other programmers".
>>
>>109226170
I suggest you to take a look in RAD Debugger, main developer has some interesting insights into the source code of it, and Casey guy said "he can learn from Fleury", video is on Jewtube, won't post links here.
> pointlessly typedefing a whole bunch of shit for no gain
Trust me Anon, it's not about gain or loss, if you want your shit to work 6 months, years or decades from now, you simply do that. C is not ideal language for development, but it's better than anything else for my purpose. Needless to say, this point is going way further than I have time to explain here, for example why you'd want to have words like 'generic', 'procedure', 'no_arguments' or 'memory' instead of one word 'void', or how 'static' can mean multiple things depending on where it's used. Ada doesn't have those problems, but it comes at different problems and prices that I am willing to pay for some projects, but not for others.
> making your code more aggressive towards other programmers
No one will read my shit anyway, I write it for myself, so that I'm happy and content with my code, people have LLM sl*p nowdays. I dislike LLMs for sure, sometimes they're useful to find synonyms and antonyms for words, instead of fighting with shitty search engines and websites full of ads and cookies. Even so, I bet someone can use chatbots to generate the thing I wrote in like a week or so, no harm in that, the only difference is that I spend 0$ on this, while generator spends a lot. I have a real non-tech job, I write code and do math for fun.
>>
>>109226271
Pointless typedefs does absolutely fuck all to improve "safety" of your code.
Fundamentally nothing has changed, you just used a different word.
>>
>>109226170
I know this look like shit, but trust me, there's a lot of stuff finished beneath that you don't see in the demo yet.
I ripped sprites, data and music from some website, since I don't have Windows to poke the PE (NT) executable myself.
It's a proof of concept, that every script is parsed correctly, game data, sound and logic work, sprites and animations loaded and working...
---
Now imagine if someone would make good pixel art of this, or something original, like Bronze Age civilizations at war...
>>
>>109226298
Man, don't be a bitch.
Be *the* bitch at least.
>>
>>109226298
I think it really says a lot. The people who are constantly shilling for these incompetent bottom of the barrel rad cock suckers do nothing but write toy programs and wrappers. I would've thought the 2 decade old meme of C midwits posting objdumps of code and sperging about code generation quality with no understanding of the architecture itself would've died, but no, compiler explorer gave new life to these faggots and casey made an entire career out clicking "view disassembly" in visual studio. Their code is horrendous, they lie about compiler optimization passes all the time, they do not understand the architectures they larp on about, and they do this utter shit in question as a form of parasitism. I guarantee you the only reason they're like this, the redunant macros that compile down to nothing and assembly incoherent sperging, is because they think it makes them special and nonreplacable.
>>
>>109226500
You're kinda correct in general, but I do write assemblers and wrote three compilers so far. Don't misunderstand, they're shit, no optimization, compilers are for stack-based language, etc. But shit works, it produces working ELF32 and ELF64 files.
Image related is old code made for a group project, I used group style, this is not how I usually write stuff. I do know basic stuff about machine code (not only assembly), but not more complex stuff.
Also, you sound like you use new meme languages like Pust, Zig, Nim or Go...
>>
Casey has never made a game
>>
>>109225260
No support for this in my driver unfortunately, I'll look into descriptor indexing instead
>>
>>109225734
those 3d aquarium screensavers sold a ton of copies
>>
Should I use Visual Studio 2005 or 2008?
>>
>>109226666
Do you want to support win xp or smth?
>>
>>109226661
I know you type this ironically but they probably did
>>
>>109226698
no they honestly did. the most popular one got like 20 million downloads and tens of millions of dollars.
>>
File: talking_fish.png (240 KB, 640x480)
240 KB PNG
>>109226698
>>109226661
early 2000s was wild with fish
>>
>>109226715
I have that fish at home
>>
>>109226732
they used to put it on walls and have it motion activated to scare kids
>>
>>109224285
Have you tried being normal?
>>
>>109226614
Neither have you.
>>
>>109226715
TAKE ME TO THE RIVER
>>
>>109225734
Back in the 90s it didn't even have to be 3D people were just excited about cool vibrant multimedia. I miss when computers had cohesive themes including screensavers and soundscapes and ideally you'd have an oil diffuser or scented candle that also matched the theme. Maximum comfy.

Also 3D aquarium screensavers and the like are still cool, fight me bitch.
>>
>>109225410
you could try box3d. came out recently
>>
>>109228016
box3d isn't comparable at all. It's C retardation that's meant to be included in a gay engine like Unreal. If you're a white man like Terry you write your own goddamn engine.
>>
>>109219142
IS XNA still viable?
>>
>>109228121
MonoGame is the successor of it
>>
Post webms of your games
>>
>>109228365
Still working on systems.
>>
https://github.com/carbonengine/trinity
eve online open sourced its game engine, for anyone interested in that.
>>
>>109227350
t. guy who got his ideas about the 90s from vaporwave videos
>>
>>109219142
Can some kind anon with access to the best AIs have it make me a tutorial on how to program an RPG step by step?
I want to make one, but I lack any sort of critical and independent thought process. I need monkey see monkey do, but open-source games are too overwhelming so I need step by step.
>>
>>109229461
Just have AI do it for you
>>
>>109229461
An AI sub is what, 20 a month? Stop being cheap.
>>
How Indian do you have to be to have an AI sub?
>>
>>109229855
Dunno about Indian but you have to be employed (and employable) for a start from what I've seen.
>>
>>109229974
is that what a programming job is now? AI prompting?
>>
>>109230131
I doubt you'll find a single workplace where SWEs don't use AI nowadays.
>>
File: 1.png (301 KB, 1620x1256)
301 KB PNG
I'm working on a 3d voxel engine that "bears some similarities" with Minecraft, all from scratch, written in C. What I have so far:

Procedural world generated in six stages: height‑mapped terrain with island‑ocean coastlines, ore veins (coal, iron, gold, diamond, lapis lazuli), worm‑like cave carvers, underground chambers with loot chests, forests with oak/birch/acacia/cherry trees, giant mushrooms towering the terrain, and surface decorations (melon/pumpkin patches, sugar cane). Deepslate and voidstone appear at deeper layers. Standard world size is 512x128x512, with a total of 33,554,432 blocks and ~32 MB RAM usage.
55+ block types including natural terrain, four wood species with planks and leaves, sandstone, clay, terracotta and dyed variants, polished stone and brick blocks, functional blocks (chest, furnace, iron/gold block, bookcase, barrel), and water.
Procedural textures for every block and item, generated at startup using noise and pattern algorithms: no image files required.

And a bunch of other sexy stuff. All in an ~158 KB binary.
>>
File: 2.png (204 KB, 1620x1256)
204 KB PNG
>>109230353
>>
Anons...
Say I wanted to make a Rune Factory 4 clone.
Say I really like this game and want to add content to it, but since reverse engineering and decompiling are hard, my best bet is to make a clone with the same assets.
How hard would it be?
Or is it a pipe dream?
Let's say I use AI to help me, do you think it's feasible for a noob?
Even if I know C and some OpenGL, I'm lost when it comes to programming game mechanics.
Sandniggers can make games, so why can't I?
>>
>>109230415
>Let's say I use AI to help me, do you think it's feasible for a noob?
no
>>
File: CrumbAmerica.jpg (662 KB, 1200x1684)
662 KB JPG
>bro you should port doom
oof
>bro you should download quake zip on github
oof
>bro you should tinker with opengoal and get a copy of Jak and Daxter
oof
>hey isn't half life open source?
>uhhhh
>HEY COME BACK HERE
>NO DONT
>Xash3D it is then
>>
>>109230523
What in the name of Lapislazuli Anriquini are you blabbering about?
>>
>>109230544
sounds like he has several voices in his head all giving him bad advice
>>
File: sanglard.jpg (34 KB, 811x1000)
34 KB JPG
>>109230547
fuck you
>>
>>109230558
programming shit like it's the 90s or 2000s is bad advice, sorry
>>
>>109230547
Looks like he's reading that shitty beginner trap book. Do we tell him yet, or let him marinate in his misery a bit more?
>>
>>109230523
>wants to learn game engine dev
>but spits on the most complete open-source commercial games
Holy Faggot McFag.
>>
>>109230608
they're ancient, you're better off looking at Godot
>>
File: fps.webm (3.9 MB, 2000x836)
3.9 MB
3.9 MB WEBM
I've completely stopped coding for my engine and moved to claude, it's just too good bros. Added a 2.5D renderer with a map editor over the last week for a quick little fps segment. It's sector based with cascade shadow maps for sky, point lights, a shadow map atlas, clustered forward rendering, reflective shadow maps for GI. Got claude adding monster behavior now.
>>
>>109230626
>he thinks studying a game engine is the same thing as studying a game engine running a commercial game
You aren't gonna make it, sorry anon. Wish for better luck in your future endeavors.
>>
File: gabeCube.jpg (15 KB, 460x261)
15 KB JPG
>>109230608
>>109230626
there's a lesson in both of these posts

developing for the gabe cube is top priority honestly but with the knowledge to earn it to appreciate it
>>
>>109230665
>developing for the gabe cube
Ain't that just a low-spec pc?
>>
>>109230664
I've been working on games and game engines since the 90s and I can tell you that studying a game from the 90s is a bad idea
>>
File: animeglassesman.jpg (196 KB, 700x394)
196 KB JPG
>>109230672
yes
>>
>>109230676
then you're the museum exhibit of interest, anon
>>
>>109230693
what?
>>
>>109230676
Ahh right, because it doesn't showcase the latest snake oil scam. What are you scammers peddling now, AI? Raytracing?
>>
>>109230739
Do you have any idea what you're talking about
>>
>>109230698
There are side scroller shitposts selling for millions of dollars by god tier solo devs doing low ball pricing. We are not all motivated to be the next John Carmack but we should all be educated by John Carmack as a baseline.
>>
>>109230785
>we should all be educated by John Carmack as a baseline.
You shouldn't because the last time he was relevant to video game programming was the 90s
>>
>>109230793
The doctor you saw about that lump in your chest was born in the '70, so he's irrelevant todayim. You should disregard everything he says and eat plants or something. It worked for SJ.
>>
>>109230805
imagine comparing video game development to medicine
what a stupid fucking analogy
>>
File: TarrantDoom.png (242 KB, 633x538)
242 KB PNG
>>109230907
im not that anon but i would compare it to my math teacher being a hot woman 20 years ago vs "when am i ever gonna use this irl?!"
>>
>>109230961
the way you programmed games in the 90s was pretty simplistic, which in some ways is a good thing but in other way it's a bad thing because simple architectures means you're going to have difficulty implementing a lot of features modern games take for granted
>>
>>109230805
it's so joever for film, kino bros
>>
File: madman-b.jpg (63 KB, 567x333)
63 KB JPG
>>109230987
>miniclip vibe coders playing shareware Kirklife 3 while
>AAA consumers are playing Blowathan John's Sokoban Snake Tetris Candy Crush (it was programmed in Jai by hand (AND EXPENSIVE!))
>>
>>109230987
like what
>>
>>109231148
Modern games like to do stat and skill systems that interact with gameplay mechanics in a complex way, that's going to be a pain to do if your game is structured like Quake
It's also much harder to iterate on game ideas and create complex gameplay logic in general if you don't have some sort of object composition system
>>
>>109231317
>acting like modern games have more complex/skill stat systems than 90s and earlier games
are you fucking retarded. have you ever played a game from the 90s?
>>
>>109231325
>>acting like modern games have more complex/skill stat systems than 90s and earlier games
they absolutely do
>>
File: KavehKardan.png (270 KB, 1650x776)
270 KB PNG
Elite github knowledge
>>
>>109219142
what tutorials/resources/books do you guys recommend for DirectX 9 programming?
I was given a Windows XP laptop and want to build something in it
>inb4 install linux
that wouldn't be fun though
>>
>>109231559
Too bad kons-9 is dead and never amounted to shit. The idea of an emacs of 3D was cool, wish it had gone somewhere.
>>
>>109230353
Are your cave carvers simple 3d noise or do you have something more complex? Given your world size I assume you generate everything upfront. Is there an actual chunk system going on there?

Also how do you min max ram usage when doing these Minecraft clones? Could you achieve the same in c++?
>>
>>109231325
>if I had more fire resistance, I could kill the fire elemental!
>>
>>109230131
pretty much. it all went to shit.
>>
Going to use flutter for my engine ui. Apparently it’s the new hip thing companies are doing to get around the typical paid frameworks.
>>
>>109231847
There’s plenty of DirectX 9 stuff online, I don’t have any recommendations but I’ve built a quick DirectX 8 engine using chatgpt, it’s a pretty good tutorial it can explain stuff and whatnot
>>
using Unity while having ambition for your own game engine is total humiliation factory
>>
>engine devs at Id are all laid off
What happened bros? I thought we were unlayable?
>>
>>109232982
>I thought we were unlayable?
we are
t. jobless
>>
https://www.youtube.com/watch?v=0i4UlhUkn5w
>>
File: Untitled.png (47 KB, 985x849)
47 KB PNG
>>109219142
I made some progress on my game engine, but I'm stuck. Can anyone guide me from this to a good 3d game engine? I want to make an open-world RPG.
>>
>>109233199
Read about the structure of a game engine? main.cpp is a good starting point but you're gonna need more files
>>
>>109233199
please stop posting already
>>
>>109233199
Start by removing the 'pp' from your file extension.
>>
>>109226543
>Ignores pretty much everything I said
>Shills a literal who assembler as if anybody cares about a simple parser and bitfield builder
>If I don't entirely agree with you. you must use a language i dont like
Have you considered the rope? You seem too mentally unwell to function beyond the rioting oogabooga wigger threshold.
>>
>>109233199
you're almost there, anon. keep at it.
>>
>>109233372
He's a slav go easy on him
>>
>>109229840
You guys are paying for AI?
>>
>>109233655
You’re not?
>>
>>109233365
More like transitioning to C by removing your pp.
>>
>>109233655
"You" who? The company? Yeah we get $2k to spend in tokens in work-related matters.
>>
why Vulkan so difficult?
>>
>>109234044
This gets asked so often that every LLM out there must've digested thousands upon thousands of answers to it.
>>
Best encapsulation of the failure of modern graphics APIs is that you'll never find good modular graphics programming related libraries that you can slot into your renderers. I can't just pull a nice implementation of a cascading shadow map off of github and stick it into my project I have to comb through their CPU code and shader code and see what kinda ad hoc bullshit they did and adapt it to my own ad hoc bullshit then maybe get it working after hours of tedium.
>>
>>109234504
retvrn
>>
>>109234593
no just learn more vim than vim and config your config, goyim
>>
>>109231987
The cave carvers are worm-like 3d noise, basically it's a "worm" 10*area_scale (area scale is a world size factor, bigger worms for bigger worlds) carving worm-like tunnels with a mutating radius (8-12 blocks), altitude is clamped between Y14-52 (Y0 is bedrock), Y52 because water level is Y64 and i want a very rare chance for the worm to burst ouside of the ground, creating some amazing looking caverns (and not ridges or just cracks in the surface, full-blown caverns). Each worm takes about 45 steps then stops.
After the worm carving phase there is another worldgen phase which generates treasure rooms (small hollow rooms, 5x5x5, with a central loot chest filled from a specific table. Each chamber rolls 4-10 items with weighted random selection.)
Those treasure chambers have a big chance to be created adiacent to the caves, which will just expand the cave into the room. A later worldgen phase decorates the cave walls (and the neighboring treasure chambers) with specific blocks, based on the Y coordonates (voidstone at the bottom layer, granite, diorite, andesite, coal, iron, gold, depending on the Y coords.
The whole world is generated upfront, a full worldgen of a 1024x128x1024 world takes 45 seconds, but that's half a billion blocks and hald a GB of RAM. Normal worlds (512x128x512) generate in 8-10 seconds.
No chunk system involved, i see no point for that, for now.
I never did C++, so I can't help you there, but i always try to keep ram usage to a minimum, and the various optimizations are the best part.
>>
>>109233710
No, I use all the Chinese ones for free like Deepseek, Qwen and etc, they give you a lot for free. Qwen has never blocked me.
>>
File: IMG_7237.jpg (46 KB, 960x811)
46 KB JPG
>>109233783
>imagine giving money to open gay eye and fagthropic
>>
>>109230676
a 30 yo boomer knows this tacitly (you wouldn't think to write this stuff down) but zoomers need a history lesson to know what the ground floor of a game loop is to survive the mess that is the modern distrohopping landscape.
>>
>>109234919
The local models have been hit or miss for me on if they’ll actually tool call or just perpetually carrot me. “Okay, I’m making the change right now!”
>no you didn’t
“You’re right I didn’t I’ll do that right now!”
>etc
>>
>>109234882
>no chunk system involved
so you just have the entire world loaded and rendered at all times? how are you storing block data and how are you creating meshes?
>>
>>109235156
The entire world is loaded in RAM at all time (basically it's an array of uint8 + some special arrays for complex objects, like chests or furnaces (the have their own storage system), but i'm raycasting only the blocks in view, up to a max blockview limit (which is usually 70, a fog effect is applied for anything beyond that so it's not rendered), DDA ray march through world grid until a solid block is hit, then compute texture UV, apply side-based lighting, fog blending, and target outline.
It sounds more complex than it really is, but keep in mind that i'm mostly testing this in QEMU, so the current window resolution is 800x600 while the render resolution is usually 400x300, mainly because i want the upscalling for that jagged retro look. On proper hardware the emulation limits vanish but we're still talking about non-accelerated graphics here.
>>
>>109233372
> > Ignores pretty much everything I said.
Yes.
>>109233389
Yes. (:
>>
>>109226115
>>109226271
>>109236825
Well, as long as only you will ever work on it knock yourself out, but please do not typedef shit like this if you intend to work with others.
>>
>>109231847
DX9 is bad because it has special snowflake texel coordinates, and it has some bullshit related to Device Loss that DX9Ex fixes (windows vista).
Install windows 7 on it so that you can do DX11, maybe DX12-on-Win7, if possible (But I think you should ask the AI if windows 7 even has drivers for your specific laptop model). But you need 2gb or more ram.
>>
>>109236876
Yeah I work alone and I write for fun.
All jokes aside, I do refactor my own stuff.
Some parts of the code I wrote semi-drunk.
Then later I look at it, and I'm wtfing...
---
Like 2-3 years ago, I decided to write for myself.
Like no one will ever use or modify my code.
Which stayed true for this long...
Only 2 guy used my stuff, and refactored into normal C.
>>
>>109235132
I've never seen that from any local coding setup I've tried. I've used M2.1, M2.5, Qwen3.5, Qwen3.6, and GLM-5.1 in OpenCode and pi. Though I have seen some weird behavior from Gemma 4 with no system prompt when I tell it to use a particular MCP server but I forgot to actually set the thing up.

But it sounds like your workflow is quite different from mine. My setup is pretty slow, so I typically just give it a single prompt, let it run in YOLO mode (in a sandboxed VM) for an hour or two, and come back to review the final output.
>>
>>109236915
*you might be able to install windows 7, but you probably won't be able to use DX11...
>>
>>109232982
Someone on /v/ said they were being dickheads about sharing their tools so this is Microsoft punishing them.
>>
>>109237252
It's more that M$ was doing the old "train your replacements" trick, and id weren't falling for it.
>>
>>109232982
https://www.eurogamer.net/developers-microsoft-owned-doom-studio-id-software-form-union-with-cwa
>>
File: Screenshot (1833).png (617 KB, 1478x917)
617 KB PNG
Claude has been absolutely cooking the past few days, been adding so many features. it banged out this profiler/flamegraph with cpu/gpu and everything. Also had it bang out a lot of asset imprting stuff like audio compression stuff, had it add a lua debugger finally, lots of lua reflection/binding stuff, made the assetbrowser better looking and super functioal, prefab stuff, lots of animation stuff to be like unreal, pretty much got all the animation blueprint nodes fully implmented in code. note performance is shit cause im in a debug build. If anyone wants to help vibe code with me, ill share the repo
>>109230626
>even looking at godot
NGMI
>>
>>109234504
thats not a failure of graphics APIs thats you not understanding how abstraction layers work
>>
Unrelated image, please ignore...
>>
You faggots better keep this thread alive until tomorrow morning.
>>
>>109237569
Classic slop.
>>109237303
Microslop.
>>
>>109237569
woah. a worse copy of things that have already existed for 30 years except giving money to [COMPANY] every time you wanna make it a tiny bit less worse? this. changes. everything.
>>
are there atomic bitwise operations?
>>
>>109237923
Cope. My agent is banging out an Agent-native UI kit for the engine right now. This is the future.
>>
>>109238047
show your code
>>
>>109238047
No, the future is ASMR educational content
>>
>>109237923
its more annoying that these faggots think its the chatbot doing all the work >>109238047 when in reality its the time and effort put in by the devs that came before us, and they get no credit. these retards think claude is just pulling all of this out of thin air.
>>
>>109238047
What is an “Agent-native UI kit”?
>>
>>109238096
"slop"
>>
>>109238096
It means its very css/html like so AI agents can natively write and undersand it. AI is very good at web interfaces, I want that to translate to my UI kit, so humans wont even be looking or editing the UI by hand, but instead by prompting it.
>>
>>109238123
lmao
html/css is now "agent-native" and "unreadable by humans"
>>
I wish this site made an AI board so AI retards could fuck off there
>>
>>109238137
Same, those slop faggots are more annoying than Indians or crypto-scammers.
>>
If this thread dies, all Anons programs will segfault and their projects will be rewritten in ANSI C.
>>
>All functions in Verse run as part of atomic transactions, which can be rolled back and resimulated when needed. These transactional semantics also extend to any C++ code that is called from Verse. For now, to make all this work, Verse runs on a single thread and calls C++ code built via a custom LLVM compiler that automatically transactionalizes the C++ code. In principle we can extend this method to automatically run transactions concurrently on different threads, but we have some work to do to get there on hardware that will scale appropriately.

Epic is gonna make C++ great again
>>
>>109238797
It’s Jai all over again. Why is it so difficult to make a c++ but without the bloat of centuries past. We just now finally got reflection and it’s only supported by a rinky dinky compiler that’s furthest behind in module support. Nevermind the fact that modules are 6 years overdue.
>>
>>109238797
So all they gotta do is take a single threaded transaction system and make it massively parallel at hyper scale? Man why didn't I think of that.
>>
>>109238829
Verse is nothing like Jai
>>
Anybody tried zig for shaders?
>>
Gotta say Sol Ultra + the new Unreal MCP is making my life so much easier, I hope they don't nerf Sol too hard.
>>
>>109228121
No. It never was.
>>
>>109239782
Let's just ignore all the top selling games made with it
>>
Can I VirtualAlloc 4gb at startup with no downside? Is it going to be hogging virtual memory from other processes or does each process have its own virtual memory space
>>
>>109232848
not sure if this poor thing can properly handle win7 at some usable degree, or even if it could have dx11 support
to give you an idea, this thing has specs similar to the EePC 1001P (Atom N150, 1GB RAM)
>>
>>109240069
meant for >>109236915
>>
>>109239349
zig? more like zog, amirite?
>>
>>109239787
What is this, an exam question? Well, professor, this is how I remember it (without asking any LLM). The TLB contains the memory mapping and it's per process. When the kernel switches processes, it has to switch the TLB data. The TLB contains the mapping of virtual memory into actual memory. You can configure various memory layouts such as SLAB, SLOB, SLUB, I don't recall all. But basically all of them are based on independent blocks of equal size (i.e. 4 kiB). If you try to access virtual memory which is not mapped in the TLB data, then a segmentation fault exception is raised and the kernel is interrupted. The kernel creates the mapping (IOW you get some extra latency here) and switches back to executing your process. If you're using a retarded operating system such as Winblows then idk. The short answer is that you can do that, there's very little benefit or downsides. In the overwhelming majority of cases it's a smell of bad program design or poor understanding of virtual memory.
>>
>>109240147
>there's very little benefit
I can use 32bit indices into the memory block instead of 64bit pointers
>>
>>109239787
>Can I VirtualAlloc 4gb at startup with no downside
No, Windows tracks available memory and only allows processes to allocate memory that is actually available. Linux differs in that it basically accepts any request for memory (even more memory than physically exists) but your process will be killed if it tries to use memory that can't be backed.

In both cases the system call (VirtualAlloc or mmap) doesn't really allocate (physical) memory, it just creates page table entries and when you try to use the pages, you trigger a page fault and the page fault handler finds physical memory addresses. On Linux this means you can allocate massive amounts of memory and only pay for what you actually use, on Windows it's just an implementation detail because you can still only allocate memory if that memory will be available later.

>Is it going to be hogging virtual memory from other processes
You can't affect other processes' virtual memory because every process has their own virtual address space by definition (otherwise they would be threads).

>does each process have its own virtual memory space
"Process" and "address space" are nearly synonymous.

>>109240147
>In the overwhelming majority of cases it's a smell of bad program design or poor understanding of virtual memory.
It's standard practice on Linux to allocate some gigantic arena/pool so you don't have to deal with malloc/free overhead everywhere. You just mmap it at the beginning of the application, then munmap it at the end (technically optional).

>>109240181
>I can use 32bit indices into the memory block instead of 64bit pointers
Is this for saving memory? Look into V8's pointer compression if so.
>>
>>109240437
>It's standard practice on Linux
It's not.
>You just mmap
You have to explicitly tell it to fault. By default it will be virtual.
>>
>>109240437
>Windows tracks available memory and only allows processes to allocate memory that is actually available.
Are you sure about that?
>>
File: am_family.jpg (118 KB, 880x586)
118 KB JPG
>>109240437
> It's standard practice on Linux...
It should be, but it's not sadly. Retarded people write programs that leak memory, including toy libraries like SDL2, Raylib or GLFW, all the way up to MESA drivers, Nouveau drivers, and many many more programs, even compilers leak.
Not a big deal in the end, but that leads me to believe that those sloppy programmers will fail to check some string, regexp or input, which leads to CVEs, crashes and bugs.
Tip: Don't be lazy to implement a proper arena allocator, or to simply call free, initialize variables, try to use more constants, validate user input and data availability, enable all warnings, use static analysis, check out Valgrind, etc.
>>
>>109242344
>all the llms say ppm writebyte, raylib pygame, sandbox os migration I just want to gamecube drawcalls for gods sakes
>>
Anyone can redpill me on cross compilation? I want to setup a pipeline for compiling from linux to windows using black vm magic. Anybody doing this? Will microsoft go for me if I use pirated tiny10 for this purpose?
>>
>>109242636
https://github.com/KallistiOS/KallistiOS
>>
>>109242722
just use mingw. no need to use windows at all.
>>
File: images (23).jpg (31 KB, 410x487)
31 KB JPG
>>109230523
i just wanna start
no thats tmi i just wanna start
>>
File: 1783578767988855.jpg (459 KB, 1927x852)
459 KB JPG
>>109243000
Unfortunately not an option.
>>
File: hq720 (2).jpg (56 KB, 686x386)
56 KB JPG
>>109243204
i told you to code quake bro
>>
>>109243273
>yeah just change the text and character art for Fallout 3
>it's a slam dunk fish in a barrel dev cycle bro
>(shh dont tell them gamebryo is held together with duct tape, cum and bad faith prayers)
>>
>Last progress day
>/gedg/ Progress Day 7 -- March 25th 2025 at 4:00 AM CST to April 2nd 2025 at 4:00 AM CST
Grim
>>
>>109243377
what?????
>>
File: rc58tndgfyfb1.jpg (80 KB, 593x424)
80 KB JPG
>>109243340
no cum
>>
>>109243377
What the fuck is a progress day
>>
File: Simpsons.png (121 KB, 894x471)
121 KB PNG
>>109230523
holy shit SIMPSONS YES FUCK YES THIS IS GOING TO BE FUN

TOTAL BOOMER SHOOTER DEATH
>>
>>109243631
>>109243398
https://rentry.org/gedg-jams
>>
>>109243710
>jam
>progress
Imagine how much actual progress you could do dedicating that time to your game.
>>
File: 1612935050266.png (85 KB, 422x591)
85 KB PNG
>>109243722
The actual point is to showcase what you have. Actually, these days boost your progress because you want to be part of the bantz and helps the thread from getting sidetracked by theorydevs.
>>
File: simpsonsHMM.png (137 KB, 1583x688)
137 KB PNG
>>109243634
checkmate oh no
>>
>>109235213
will you do lighting?
my clone is in gdscript and uses 1GB ram for a 260 render distance, LMAO
each voxel is stored as an int, but i was intending to use 5 or 6 bytes per voxel to allow liquid to overlap a voxel like fences/stairs/etc
>>
>>109243205
why not?
>>
>>109240181
You can just use a std::vector.
Webassembly has a 32bit address space, and they just delete everything and reallocate it using power of 2 sizes just like std::vector (this is how wamr works, I wouldn't be surprised if other runtimes did things differently, because wamr is not made for windows / linux, it's for embedded).
Why? because it's portable, and windows is the only OS that does this so there is no portable API that would work on linux/embedded.
On linux you could just allocate the whole 4gb space and it would work with multiple wasm instances, but I believe it's possible to configure the kernel to respect over committing (none of the distros enable this), but I bet that if you enabled that feature, that naive wasm library would stop working since you can't run more than 1 wasm instance at the same time without eating all your ram.
With wasm, manually allocating a new piece of memory and copying everything is a problem with the wasm module, not the runtime, because you should have set a minimum heap size in your build flags so that memory growth rarely happens.
You can do the same thing with std::vector by using .reserve().
If your problem is the large stutter in-between each power of 2 allocation, you can easily segment your allocations, this is already done in std::deque, and it runs at the same speed as std:vector for O(1) accesses and looping.
And you need to benchmark a real world scenario, I know that you might save 1 second or whatever during that big copy with millions of entries in that array (depends on how large the elements are and the build flags), But if you actually did any sort of compute on those elements, the 1 second delay is nothing compared to the minutes you would need to spend to do anything non-trivial, like rendering or networking if this was a game.
>>
>alacritty default cli
>people are migrating to gpu native leaseware on virtually all recognized software north of the kernel drivers
>you will own nozing und you vill be happy
>and here im learning game dev to speed run my sovereign shitware chips
>>
>>109240456
>You have to explicitly tell it to fault. By default it will be virtual.
How is this a refutation of what I said? Mmap (without MAP_POPULATE) creates page table entries (virtual memory) and the kernel finds physical memory when you access (fault) the pages. You don't "have to explicitly tell it to fault", the pages fault when you access them because the present bit is not set.

>>109240474
>>Windows tracks available memory and only allows processes to allocate memory that is actually available.
Windows doesn't overcommit memory by default. The commit limit is physical memory + swap space. If you try to allocate more than that, whether in a single VirtualAlloc call or several (including from different processes), it will fail.

>>109242344
Plenty of programs make use of overcommit. Look at the VIRT column in htop, many processes have working sets larger than physical memory.
>>
How do you stop your characters from walking through walls? I'm not just talking about how you detect collision, but also how you stop them from moving when a collision is detected.

Been having a bit of trouble with this so I figured I'd ask my fellow anons how they do it.
>>
>>109244332
in 2D it's really easy, when you detect a collision on an axis, you move it out of the wall. that lets you continue sliding in the other axis when you hit a wall.
to detect a collision in 2D, it could be a bbox collision check if your walls are tiles.
for a 3d game you would just use the off-the-shelf library, pretty much every single decent physics library has examples, including an example with a movable player (probably pill shaped)
>>
>>109244283
>Look at the VIRT column in htop, many processes have working sets larger than physical memory.
Especially fun with haskell programs. GHC for some reason mmaps a terabyte of RAM at startup no matter what. So xmonad is always sitting there at 1024GB virt size
>>
>>109244283
Google says I can reserve 900TB and it only actually allocates memory when you use it
>>
>>109245430
>in 2D it's really easy, when you detect a collision on an axis, you move it out of the wall. that lets you continue sliding in the other axis when you hit a wall.
You can do this in 3D aswell, that's what I do
>>
>>109245430
>when you detect a collision on an axis, you move it out of the wall.
So do you move your character in, then move him out? Or do you have a theoretical position he could be in which you do this to, and you only set his current position to that once no collisions are detected?
>>
>>109245977
There's many ways to do this, each have their upsides and downsides
>>
>>109239349
just use slang.
https://shader-slang.org/
>>
>>109246078
Well I'm asking how you specifically do it. I figure a real world example based on actual experience is better than an exhaustive list of hypothetical solutions. Or at least for me it is.

Though if these methods have names, I wouldn't mind hearing them so I can do some google fu to figure them out myself.
>>
Did any of you fags use AI for your games? how did it go?
>>
>>109246240
Yeah, I've used it to implement some minor features. Works okay as long as you have a clear idea of what you want and the task isn't too difficult.

I wish I could find a good local model to do pixel art for me so I could spend more time on coding, but no luck so far
>>
>>109246239
Method 1:
Take an object, move them a step, if they're colliding return them to their previous location
This is the simplest method, works perfectly for pixel-based collisions because pixels are a discrete grid and you can just move an object pixel by pixel, this is what I do for pixel games

Method 2:
Take an object, move them a step, if they're colliding attempt to calculate a location between the origin point and the new point
This is what rigid body collision systems do. It can give you inaccurate results on edge cases especially when you're colliding with multiple bodies

Method 3:
Take an object and do a sweep test against another object where you determine the exact point of collision and move it there. This gives perfect results unlike Method 2. The issue is the algorithm is more limited, you can't do rotating bodies and some more complex shapes have difficult math.

Rigid body sims rotate objects so they need to use Method 2. If your game does not have rotating bodies I suggest you use Method 3 instead, a lot of people don't even know it exists because game engines ship with physics engines that do Method 2 by default, but using sweep tests gives you more accurate results and much greater control over collision responses
>>
>>109245461
I guess it's for the garbage collector.

>>109245489
You can't use the memory allocated by MEM_RESERVE until you commit it with MEM_COMMIT. That's when the availability is checked.

https://learn.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-virtualalloc

>You can use VirtualAlloc to reserve a block of pages and then make additional calls to VirtualAlloc to commit individual pages from the reserved block. This enables a process to reserve a range of its virtual address space without consuming physical storage until it is needed.
>>
>>109247974
yeah thats my point
you can still do the thing where you reserve a bunch of addresses that dont actually exist
>>
>>109247984
You can reserve address space but you can't use it until it's committed. Linux commits it upfront so you can start using it. Windows guarantees committed memory exists, Linux doesn't. It's not the same.
>>
as much as I like writing Common Lisp and C In going to glue java together with vibe code bullshit to actually learn what winning looks like
>>
>>109248021
it's functionally the same because you just need to do an extra call to commit it
>>
>>109248031
>it's functionally the same because it's functionally different
>>
>>109248122
What difference does it make? All you have to do is call the function twice instead of once, you were saying you can do this on Linux but you can't do it on Windows but that's not true
>>
>>109248129
>All you have to do is call the function twice instead of once
That's already a functional difference. But it's also wrong. If you call it for the entire reserved space then it only succeeds if the whole space can be committed (fits into available RAM+swap). You have to call it for every page and it fails if committed memory would exceed capacity. Note that committed memory is still not backed memory - there may be physical addresses that have no mapped virtual address but Windows has promised that memory to someone who hasn't used it yet. Linux doesn't promise that committed memory will be available.

>you were saying you can do this on Linux but you can't do it on Windows but that's not true
I said you can't overcommit (by default) on Windows (I believe it can be enabled but I don't know how). Reserving address space isn't committing. Windows guarantees committed memory will exist when you try to access it. That is nice in some sense because you know your program won't get OOMKilled if memory allocation succeeds. But it also means processes which commit more memory than they need are wasting it, whereas on Linux that memory can be used.

Windows' memory allocation is like having allocated desks in an office where people often work from home. Linux allocation is like hotdesking where there are enough desks in practice that everyone can get one when they want, but in theory if everyone showed up on the same day they would have to send some people home.
>>
>>109248248
Reserving memory on Windows then committing when you're actually using it is functionally the same as just committing it on Linux
>>
>>109243990
It's c# compiled ahead of time.
>>
>>109246268
>I wish I could find a good local model to do pixel art for me so I could spend more time on coding, but no luck so far
>Asking ai to make soulless art for you when you could grab the next offtheshelves asset package from the internet.
>>
>>109248492
You clearly haven't ever done graphics work in your life.
>>
>>109248499
neither have you if you think you can get AI to do your game graphics
>>
>>109248499
And now you larp as a professional assets shitter right? Two wrongs don't make a right anon, just go to unity assets or itch.io because what you'd get from ai wouldn't be that different anyway.
>>
>>109248021
Lavd scheduler helps me a lot when I run unoptimized Unreal Engine garbage using vkd3d. With ntsync and normal kernel scheduler I might get heavy fps fluctuations to 30s but with lavd I can maintain 60 fps. UE still creates hard glitches because its memory management is so ineffective by default because devs just cram in bunch of shitty assets with millions of polygons and then call it a day.
>>
>>109248517
>>109248516
I don't larp as anything. I have a long list of imdb credits but you only have bunch of shitposts on 4chan. Grow up, kid.
>>
>>109248523
long list of imdb credits yet you're still asking about how to make a game with AI
hmm
>>
>>109246268
You can do pixel art with Klein9B and it can become viable if you combine it with photoshop pipeline. Creating animations is a different task. You'll still end up doing lots of manual work regardless.
If you don't understand digital image manipulation basics AI won't solve anything for you.
>>
>>109248525
Maybe learn how to read threads first.
>>
I have an idea for a really nice game (it's a multigenre game + new genre that doesn't exist yet), but I have bad skills beyond very basic coding and design or art.

I don't have money for slave labor, but I'm not sure I want to pitch the idea to random people if the only thing I'm paying them are shares from sales and I basically have no leverage because I will only be the manager of the project, meaning that the people I "hire" can kick me out of the project entirely if they don't like the direction or want my shares since I'm not really "contributing" directly.

So yeah, bit of a pickle here.
also, part of the fun for me is designing the game my self (both art and programming) but I'm not really good at either and the game I'm making is really complicated in terms of systems and programming. imagine RTS but even more complex. and RTSes aren't know to be easy to code.
>>
>>109248558
Ideas are worthless
>>
>>109248308
I'm not going in circles with you. If you can't understand the difference get your head checked.
>>
>>109248566
Yeah not shit, I'm saying that I can't implement it.
>>
>>109248558
Everything is hard to code compared to metroidvania clone.
Trust me, everyone has they grand idea and we don't give a fuck about yours, don't be afraid.
Just get started and learn as you go, that's how I did and I'm a disfunctional adult now, you have nothing to lose.
Also, I hate this jew captcha.
>>
>>109248568
I understand the difference it just has no practical implications on achieving the end result
You said X was possible in Linux but not in Windows, that's not true
>>
>>109248518
Interesting, I might try that scheduler.
>>
File: imdb.mp4 (188 KB, 480x360)
188 KB
188 KB MP4
>>109248523
>>
>>109246240
AI is really bad at anything with global state. AI is however excellent on small/contained code that doesn't depend on any global state. Things like all the math you need for games you can basically just let it handle. Overall architecture/structure you need to be really strict enforcing I've found even if you tell it how you like it won't follow it very well.
It's super useful especially once you have the basic structure in place but I still have to refactor/redo a bunch of what it does and reorganize things especially if it's adding newer features and not modifying existing ones.

For just modifying existing things or anything "contained" it's excellent though

The #1 thing I found cause the most problems is it's use of abstractions, pulling out functions/etc. Just tell it to inline everything and not to have any external functions unless it's absolutely necessary and make sure you never allow it to create unnecessary functions/abstractions. I'm using odin so it doesn't have that much ability to do that but I could see it being really problematic in a language with more abstractions it can rely on.
>>
>>109248492
I genuinely find AI art less offensive than using asset packs. With AI art you could at least theoretically make the different assets cohere but that's not really possible with asset packs. Regardless I am mentally ill and I am just going to make my own or pay artists to make it.
>>
File: TrenchBroom_B19LWMGl3x.png (459 KB, 1754x1275)
459 KB PNG
Using trenchbroom as my level editor (1/2)
>>
>>109249799
>With AI art you could at least theoretically make the different assets cohere but that's not really possible with asset packs
You wouldn't notice, the internet is flooded with these packs. Whatever AI creates will look similar anyway.
>I am just going to make my own or pay artists to make it.
This is the way.
>>
File: Tank_Z9VlPo2ToN.mp4.webm (1.72 MB, 1000x750)
1.72 MB
1.72 MB WEBM
>>109249838
Yippee
>>
>>109249848
I notice I don't care what the normie cattle think
>>
>>109249838
>>109249851
I will now use your engine
>>
i fucking hate coding, engines and language in particular
>>
>>109249867
>I notice I don't care what the normie cattle think
Ok don't kill me.
>>
android
>>
poop in a loop
>>
>>109248544
>You can do pixel art with Klein9B
Can you really? On previous models (including previous versions of Flux), no matter what I tried with the prompt, I couldn't get it to generate proper JRPG-style maps (or pieces of maps). It would just produce normal art but in pixelated style, instead of sticking to a consistent perspective that's usable for a game.

And just to be clear, the thing I want is basically https://www.pixellab.ai/docs/guides/map-tiles but open weight
>>
Is 16" MacBook Pro with the M5 Max (18-core CPU, 40-core GPU) chip, 128 GB of unified memory and 4 TB of storage good for Unreal Engine 5 game development? Or should one get Mac Studio with the M5 Ultra (80-core GPU) chip, 96 GB of unified memory and 4 TB of storage instead (when it actually releases)?
>>
>>109251724
I got a VERY expensive laptop from my job. Still doesn't work anywhere near as well as a desktop for a quarter of the price. Especially after a few minutes of build when it heats up to boiling temps and throttling occurs.

Unless you have to work hybrid with it and lug it between the office and home, no reason to get a laptop for dev.
>>
random name generator be like
>Turding
>>
>>109251442
A base model is never going to work like its gotta be a finetune or a lora
>>
>>109251172
how's the progress on the port?
>>
Anyone else using RmlUI? whats the catch? seems pretty comfy, its an html/css-like UI library with lua scripting too. AI agents are pretty good at writing it.
>>
>>109253359
Yeah that was my conclusion as well. I tried it with a few dozen hand-labeled examples but didn't really get anywhere. I assume I need to set up some kind of automated labeling pipeline to get enough data for it to work
>>
If the player has 60 seconds remaining, should the clock say 01:00 or 00:60?
>>
>>109254756
have you never seen a clock before?
>>
>>109254783
no
>>
File: reaper.webm (3.67 MB, 1024x640)
3.67 MB
3.67 MB WEBM
>>109253626
Done! Network play even works nicely across phone and PC. The one weird thing is when you open the game for the first time and select a cd image to extract the assets from you have to select both the CUE and BIN files in the file picker due to android's weird ass file system security nonsense.
>>
File: IMG_5012.gif (1.56 MB, 500x500)
1.56 MB GIF
>>109254868
I feel like this would still even be considered ugly in 1999.
>>
>>109255526
its a typical PS1 game, they all looked like that
>>
File: gt2.jpg (43 KB, 400x500)
43 KB JPG
>>109255531
Nah, I played PSX games in the 90s, they had something called art direction and good aesthetics. This feels like what a zoomer would think a classic PSX game looked like, a pale cargo culted imitation.
>>
>>109255598
he's literally porting a PS1 game lmao he didn't make the art
>>
>>109255602
It still looks like shit though, especially compared to the GT2 screenshot that was posted
>>
>>109255631
It's a real game from the period, and it looks just as shit as most other 3D games at the time which also looked like shit
>>
File: IMG_5512.gif (1.81 MB, 298x301)
1.81 MB GIF
>>109255634
>more coping
Ok sure if you say so.
>>
>>109255645
90% of early 3D era games look like ass, go look at some ps1 games without cherry picking
>>
>>109255526
>>109255645
wrong thread tranny
>>
>>109251172
good job. I am still struggling to make my Android port survive OpenGL context loss when switching between apps. I made it work before in another Android game I made a long time ago, but back then I wasn't using SDL. it's definitely the most annoying port to make so far.
>>
>>109255526
>>109255645
Retard zoomer faggot.
>>
File: IMG_7086.jpg (54 KB, 464x332)
54 KB JPG
>>109255653
>>109255665
>>
File: IMG_7085.gif (3.56 MB, 480x270)
3.56 MB GIF
>>109255934
>>
File: siamese.webm (3.85 MB, 1280x720)
3.85 MB
3.85 MB WEBM
>>109255526
It's from 1995 and it's SOVL
>>
>>109254756
Depends whether you want it in seconds or microwave time
>>
>>109254756
60
>>
>>109254756
Are you American or just retarded? If the time is in MM:SS format, then it's 01:00.
>>
File: gems.webm (2.94 MB, 434x948)
2.94 MB
2.94 MB WEBM
does anyone have thoughts on this little mobile game I made today?
>>
>>109258917
i cant take it seriously man reminds me of the stanford asian factorio nerd's (wtf was his name?!) "attention aid" joke of having satisfying tactile B roll footage rolling while he is explaining software control trees/graphs
>>
>>109258934
yeah my thoughts were on creating something addictive for kids. like those subway surfer tiktoks
>>
>>109226271
If Casey Muratori and Ryan Fleury are any indication, rad game tools is basically a midwit company and you should ignore anything its employees (former or otherwise) say.
>>
>>109259091
I'm guessing Casey or Fleury said something you do is retarded at some point and you've been seething ever since.
>>
>>109259118
I've seen their names banded about for ages and looked into what they're saying and it's basically to build retarded poorly scaling garbage because their only professional experience is writing small middleware libraries and, being the kind of people who'd fail the breakfast question, they can't imagine writing anything other than the kind of thing they'd written.
>>
File: 1783683829623547.png (351 KB, 1332x898)
351 KB PNG
>when they have a pedosky link on their steam page
>>
>>109259416
Bluesky account is a huge red flag.
>>
>>109259416
>>109259434
Chill it with the pedophobia, uncs. /gedg/ is an inclusive general.
>>
>>109219142
Anyone in here have experience with hybrid static/dynamic global illumation? So far i've only been able to find good information on this pretty unique approach from a presentation that showed how RDR2 did it.

It looks soul-crushingly hard without any good learning resources.
>>
>>109249838
>Using trenchbroom as my level editor
How do you find navigating in 3D space? I find it kind of weird. Why doesn't it work more like Blender?
>>
>>109261346
nta but if it takes you longer than like 10 minutes to adapt idk what to tell you
>>
>>109230415
You should really break it down in steps anon. First do the basic: get your engine to load 3d models from disk, implement some material system, implement some basic animation system, use SDL to streamline window creation and getting input from the keyboard, create a basic game framework from scratch, you don't need to make things too abstract like ECS, just some GameObject base class with a std::vector of pointers to IComponents is already a good start. Get your character moving on screen, figure out how to handle some basic collisions (box, sphere), think about how pathfinding will work for NPCs and monsters, how you'll handle 3d model swapping when you change equipment, how the farming system will be implemented, and so on.
As you can see, RF4 is not a game for a beginner. No wonder few devs attempt to make these types of games. They take a LOT of time to make because they have lots of little things that need to be refined gradually. Compare the first RF to RF4 and you'll see how crude things initially were. It took them years to get it right. Not to mention there's also the art to make, the music, etc. I suggest you start with something simpler until you feel more confident in your skills.
>>
>>109262446
>You should really break it down in steps anon.
a newbie doesnt even know how t do that
>>
>>109259404
>poorly scaling
sorry but youve been mindraped by enterprise software ideology.
>>
>>109249838
>>109249851
How are you loading the maps into your engine? Are you using the .obj export or are you parsing the .map files and computing vertices yourself?
>>
>>109262709
how do you know you haven't been mindraped by garage software ideology?
>>
>>109242344
using sdl is the only way to ship future proof and working games for linux stfu retard
>>
>>109225289
>>109225383
Thanks for beta testing!
>>
>>109264455
>only way
Don’t you make me make ChatGPT write individual drivers for every mouse, keyboard, and gamepad out there just to prove you wrong!
>>
>>109264513
using anything but sdl (including calling xlib and alsa directly) is actually more amateurish than using sdl directly because sdl mantains a stable abi and compatibility libraries for older sdl versions, this means that games from the early 2010s or even linux ports from the 90s (simcity 3000) can run on modern linux desktop with wayland and pipewire
If you had a game that didn't use it (for example serious sam 2) you'll have a miserable experience with joystick compatibility and fullscreen management (since they have changed the xinerama bullshit tons of times)
i've shipped several linux games so SHUT
THE FUCK UP
>>
>>109264594
It was a joke brother, please lighten up just a tad for the rest of us.
>>
File: 1763096388901459.jpg (31 KB, 456x320)
31 KB JPG
>finish work as a programmer
>don't have the motivation to work on my own game
>>
>>109219142
Has anyone built actual good shit with odin or zig memlang?
>>
>>109265309
just wait my odin game is going to blow everyone away
>>
>>109265309
JangaFX uses Odin, if it can do that it can definitely do games.
>Zig
No idea, but the creator is very butthurt about Bun switching from Zig to Rust for AI and wrote a very childish blogpost where he was clearly seething and not even trying to hide it, which doesn't bode too well.
>>
>>109265334
2dslop scroller ugly stupid faggot edition? (it was on the wukash podcast and has THE ONLY ODIN BOOK associated with it)
>>
File: 1778986069068599.jpg (6 KB, 244x250)
6 KB JPG
>rework inside of a rework in the middle of another rework
>>
>>109248433
>It's c# compiled ahead of time.
I had to figure out C# AoT cross compilation just last week at work. There are a bunch of sparsely documented csproj properties you can set to override the linker, compiler, etc. You could probably make it use mingw that way, or you could try to set up an msvc cross compiler and use that.
>>
File: clip10s.webm (3.09 MB, 640x360)
3.09 MB
3.09 MB WEBM
Releasing in 2 weeks.
My marketing strategy has been to go to random discords I have no history in, post the game, then when someone gets mad delete the post. Then when they make fun of me for deleting it, I throw a tantrum. This has gotten me a few wishlists I think but it feels really disheartening. You gotta do what you gotta do I guess. I don't understand marketing, wish I had a manager.
>>
>>109269327
people who just make games they like and dont consider their market appeal are never going to be popular
>>
>>109269342
I only think there is one good game, Quake 3. That's the only game I play. All other games suck.
I also believe that the engine the game is made in is of equal importance to the actual game, because I like looking at the implementations of different effects in the game and then figuring out how they did them.

Almost nobody agrees with me on either of these points, so I agree that I'm unlikely to be popular anytime soon no matter how much effort I put in. I'm overwhelmingly sad about it, my life feels like its falling apart.
>>
>>109269371
what did you expect?
>>
File: me.png (2.84 MB, 1536x1024)
2.84 MB PNG
>>109269385
This. I expected this.
>>
>>109269419
nobody gives a shit if you're a solo dev or you made your own engine or your own programming language or you spent 15 years on your game unless it's actually good
>>
File: chuddythinking.png (49 KB, 740x859)
49 KB PNG
>>109269422
Why are you so negative?
>>
>>109269437
it's just the truth
sounds harsh but wasting your time and effort on something that won't be appreciated is worse
>>
>>109269440
Some people will appreciate it, look I already have 3 wishlists. This could turn into thousands through word of mouth. I really think my game is really good. I showed it to my mom and she was impressed.
>>
>>109269457
there is interest in boomer shooters but i think they're old FPS games interpreted through modern sensibilites whereas you might be missing the modern sensibilities part
>>
>>109269462
Can you be more specific? Sometimes you guys have good advice. As long as your advice isn't "make it like ultrakill" or "make it multiplayer" or "do a story".
>>
>>109269543
I don't actually play them because I think they're style over substance shit, I'm just saying there's a market there
>>
Im at the stage where I need to figure out the best way for the entities interact with the player entity. My engine uses a system where there is a world/map struct that contains all the rooms and the player entity, however each room contains an array of entities. Ive heard a lot games use an event system for interactions to keep logic separated for the player. I could just manually inject the Map struct in entity update function but that seems kinda sloppy.



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.