[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

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


Janitor applications are now open. Apply here!


[Advertise on 4chan]


File: directx_logo.png (85 KB, 410x256)
85 KB PNG
Programming with DirectX 3 like an autist 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 >>108848278
>>
post some fakin progress
>>
Anyone here experienced with shaders and lighting techniques? I'm considering changing Godot's default lighting but unsure if it's worth the time investment.

The engine feels bloated for what it provides the project is over a million lines of code for a basic node system, a Python-like scripting language, and some built-in physics. By comparison, Quake III (yes a much older engine but still) is far more compact (and is under 50K LoC). For raw output and ease of building, maintaining, and editing engine source, Godot feels like too much hassle.
>>
File: 1750107636950055.png (1 KB, 150x54)
1 KB PNG
all windows games come with a directx button
>>
>>108894535
don't have much time for that with a full time job
>>
>>108894549
anon quake engine is a hyper focused engine for running quake maps
godot, incompetent pedos behind it aside, is a general purpose game engine and you're counting lines of code dedicated to the editor, tooling, project compilation, etc...
>>
>>108894549
Perhaps with AI tools you can now generate an overview of the source code to ask: Why is this functionality so big? I only need this subset, trim it down to that.
>>
File: 1776965310132856.png (1.4 MB, 1200x864)
1.4 MB PNG
how stupid would it be to use C++ and imgui for things unrelated to videogames or graphics in general. Not saying it wouldnt have graphics since imgui would allow for easy integration of real time graphics but more as a flourish or a stylistic choice, not as the main piece, while the actual purpose of the program itself would be something completely unrelated
>>
>>108895211
It's always a tradeoff. Some would say C++ is overkill when performance isn't critical. Others would say it's harder to keep multiple languages in your head.
>>
>>108894549
Godot does a shitload more than the Quake engine
>>
File: broke_fonts.jpg (290 KB, 1920x1080)
290 KB JPG
trying to unbreak my fonts, having a command buffer deadlock issue so I'm working on deferring the copy pass until after all this async stuff is done so I can schedule it properly.
>>
File: harrold.jpg (33 KB, 480x360)
33 KB JPG
>>108894557
My directX seems to crash whenever I hit that button. Microsoft needs to get its shit together
>>
>>108894549
Lighting is one of the most visually important thing s in one's gam engine. It's worth it if the existing tools aren't enough for you.

>>108895211
I've used imgui for throwaway tools. Wouldn't use it for anything I'm sharing with others. It's not for frontend use so it doesn't support things like screenreaders / right to left languages
>>
didn't drop $400k on music licenses?
your not a real indie dev
>>
>>108894535

what you think about https://o3de.org/
>>
>>108894497
wiki's down on mai side, throwing 504
>>
File: collision.png (2 KB, 167x36)
2 KB PNG
>>108894535
I've added collision detection to my first "engine".
I know it's nothing impressive, but despite my best effort the architecture of the whole thing has become so convoluted that even this was really challenging.
>>
File: fontsagain.jpg (279 KB, 1907x1029)
279 KB JPG
okay so I thought I had a race condition or something that was scrambling my font atlasses and spent heaps of time refactoring the way GPU buffers work and adding all of these fences and synchronization stuff but it's still all messed up. If I save them to a file they look fine tho so I guess that narrows it down a bit.
>>
>>108897577
even if I download the atlas from the GPU and save it looks fine wtf man
>>
>>108897577
in renderdoc you can see each resource and each vertex in a captured frame.
there is fragment shader debugging, but you can't really debug vertex shaders however (but it's not that hard to just look at the raw vertex inputs and figure out stuff with that).
But RenderDoc is known to have issues with non-native graphics libraries. It's expected that you are going to see vulkan commands, but you really don't need to understand vulkan to inspect resources.
>>
>>108897577
Rather than race condition it would be something like old text mesh needing rebuilding or texture matrix should update for new UVs when textures got resized.
>>
holy shit ue6 now I can finally make a video game
>>
>>108899316
>ue6
The UE5 editor barely even runs even on a decent gaming PC, making a UE6 game will probably require a $40,000 work station.
>>
>>108899316
literally nothing is known about ue6
>>
>>108894549
you can write your own shaders in godot, which includes your own lighting model if you wish
>>
>>108899432
shaders are only one component of a lighting system anon, you'd have to at least write a gdextension in addition to that if it's not a toy and you want reasonable performance
>>
File: 1628983678722.png (189 KB, 418x421)
189 KB PNG
Henlo. I am thinking about starting a new engine after finishing my janky raylib-engine game that's nearing completion. I love C so I'm going to stick with C.

To inaugurate official development, I am thinking of starting by building my own simple string wrapper paradigm. The idea is to have something generally like this:

typedef struct 
{
char *data;
size_t len;
} String;


Of course with helpful string manipulation functions.

My question is, the more and more I think about it, is there even any benefit to doing a string struct, or should I just keep doing char* like I've been doing all along?
>>
>>108899468
Don't try and create universal solutions you'll spend more time on adaption hacks then if you just implemented your needs directly.
>>
File: 1777490427962193.png (12 KB, 130x116)
12 KB PNG
>>108894549
>Godot
>>
>>108899468
You could do something similar (or just use) this:
https://github.com/antirez/sds
It puts the metadata for the string before the string pointer, so you can still just use it as a normal c string.
>>
>>108894549
So just make games in FTEQW
>>
File: 1775523982136954.png (1 KB, 370x320)
1 KB PNG
>>108900006
>GPL
>>
>>108900157
whats wrong with gpl
>>
File: 1773748161738309.gif (853 KB, 220x220)
853 KB GIF
>look at modern day games with textures disabled
>that forest floor that looks like it's composed 15 billion polygons is actually just a flat plane
>>
>>108900553
Everything in current year is just texture tricks. That's why we need 40lbs of GPU, every pixel needs to be processed 15 times per frame.
>>
>>108900157
nobody wants to use your shit code anyway faggot keep it to yourself
>>
>>108899468
The problem with that is that it necessitates that the allocation of the string data itself is separate.
Sometimes that's nice, sometimes it isn't.

If I were to do it myself, I would do
struct string {
size_t len;
size_t capacity; // Optional; maybe as a separate string builder type
char data[];
};

struct string_view {
size_t len;
char *data;
};

But then I find all of this stuff overly tedious, and just throw char pointers around.
>>
>>108900934
saar I won gorgeous code of the year award
>>
File: 1766773959790031.png (35 KB, 772x270)
35 KB PNG
>>108901119
>doesn't even implement small string optimization
ngmi
>>
>>108901135
Do whatever shit you want, my point was that having a separate string and string view usually is nice for keeping excess allocations down.
>>
>>108901141
small string optimization prevents allocations entirely unless necessary
I'm sorry you're just blindly reinventing the wheel without even really knowing what a wheel is
>>
>>108901151
I'm aware of what that is. I don't actually write string types for my own programs.
>>
>>108894497
I'm good at wasting time, but not good at getting my work done.
>>
>>108899468
Not sure about C(uck) practices, but wrapping widely used formats in more adaptable structs that will make refactoring less painful works well in the long run.
>>
File: 1766653839588641.png (200 KB, 840x1050)
200 KB PNG
/gedg/ should be able to solve this
>>
>>108902085
I knew the answer before I even looked at the code
>>
>>108894497
Should've called it Microsoft Direct N
>>
>>108902085
Thankfully it's been a while since I had to work with C++ but int *var = array; should just point to the start of the array so it will point to the first element.

Basically, it's 2, you faggot cuck.
>>
>>108901135
use case for small strings?
>>
>>108902642
efficient handling of probably like 90% of all strings used in the wild
>>
>>108902747
If your strings are small you're probably using them for something that would be better solved with something else like an enum
>>
>>108899468
Here's the thing, the problem with strings in C and why everyone keeps tripping over them 50 years later is there's actually anywhere between 9 and 12 different types of strings and people keep trying to find a silver bullet that solves all of them. I think this stems from the fact that all strings are just pointers to characters, so because their memory representation is the same people assume they must all have the same interface as well. However there's a world of difference between what you're allowed to do with a string literal, a string you're reading from a file and a string the user is typing in from their keyboard. The correct way is to handle each one separately but that feels wrong and so people keep trying to make a unified string class. Surely we'll get one that works if we spend 50 more years at it.
>>
>>108902854
You are an idiot.
>>
>>108903045
ok what's your string use case where 90% of them are small strings?
>>
>>108902747
Lying shit. More like cpp stl committee boomers were so retarded it took them until 2016 to figure out they should implement a string view (yet another scuffed string concept) after decades of fucking up std::string, over, over, and over again. Neither of which are remotely usable. SSO is nothing more than a gross hack to make babies first "hello" + "world" alloc 2-3 times at the cost of bloating every struct with a string handle
>>
>>108903072
The Hello World he keeps rewriting in every single language (lol
>>
>>108897577
back to work on this today. Once this is done my life can finally begin.
>>
where else is there to post about gamedev stuff other than these threads and random discords? I made a bluesky account recently because I thought I could just ignore the trannies and maybe see some cool shit but no all I can find on there are trannies and furfags not posting cool shit.
>>
What algorithm does real-life collision detection use?
>>
>>108903131
well on a computer simulation you have to calculate everything using algorithms but in real life it's an actual physical process which algorithms just describe.
>>
>>108903131
Cauchy Schwarze Raytracing Approximation to Rasterized area of quantum resolution statistical spin error with the microtubule spinor engine and ATP path home configs of
$brain: ~/.self
>>
>>108903103
dunno, but if you find out lmk
>>
>>108903152
>the hitbox of my nightstand increasing when Im drunk
Damn you Miyazaki
>my socks noclipping from the laundry
>>
>>108903169
we'll have to make one, I just need someone to make the logo
>>
If I have a loop like:

 
bind descSet0 to set 0
for (obj in Objs)
bind obj.descSet1 to set 1
draw obj


Do I need synchronization between updating the descriptor sets?
>>
>>108903170
>my advanced optimal API interface of my brain occluding mom's screams that I do the dishes
>>
File: no.country.gif (1.97 MB, 640x360)
1.97 MB GIF
>>108903084
>bloating every struct with a string handle
lol
>>
>>108903436
Thanks for proving everybodys point - youre just an incompetent hello world skid incapable of adding anything to the conversation
>>
>>108903508
better grab a book on C++, kid. or go back to C#.
>>
>>108903131
Stochastic verlet with numerical errors by design
>>
>>108903131
Emacs elbow (long deprecated)
>>
File: glowing_halo.png (104 KB, 400x400)
104 KB PNG
lisp graphics vibecoding

this shit is so complicated I need a GUI to my REPL and am making my own graphics lisp as I compound the difficulty of this SDF kung fu shit

I did not anticipate this to make a holy weed nug wow
>>
File: 1695321213686.jpg (172 KB, 1920x1080)
172 KB JPG
What's the best game engine for sepplestards?
>t. sepplestard
>>
>>108904733
The one you make.
>>
>>108900553
It still needs to do 15 billion calculations because they just moved the logic from the vertex shader and instead started doing some sort of raytracing (parallax mapping? lots of other techniques exist) on the pixel shader (raytracing for finding the depth of the texture, similar to SDFs, and optionally another ray for casting lighting).
This is faster than 15 billion vertices, but this effect was built for DLSS/upscaling, increasing your resolution / MSAA would 100% break the performance.
>>
>>108904733
Unreal, obviously. Neither Unity nor Godot expose C++.

You could try your luck with Unigine2 as well I guess, it's pretty popular for sims, archviz, etc. but don't expect world class tools like you'd get in Unreal, especially for games.
>>
I haven't done a single thing for the past month. How do I save myself from such burnout?
>>
>>108904963
https://www.youtube.com/watch?v=i7kh8pNRWOo
>>
File: 25.png (8 KB, 221x158)
8 KB PNG
>>108904963
same
>>
>>108904963
In a current economy? It's over.
>>
>>108904985
im halfway through this, does jblow smoke weed? This sounds like something my stoner friend would be on
>>
>>108905311
>The Weedness
>>
>>108905340
>Order of the Stoned Star
>>
>>108905349
>Blunt
>>
>>108905349
>Blunt Anniversary Edition
>>
is this just one guy spamming the thread with unfunny jokes?
>>
>>108905368
To answer the original question, jblow is clearly a guy who would smoke a JAInt
>>
>>108903131
you can do it via fourier transform if you have a recent gpu.
>>
>>108905678
or blow a john
>>
>levels and save file are in XML format
>give them all a custom file type
>encrypt them with base64
>compress them with zlib
Is this overkill?
>>
>>108905888
I think you need to transfer them through websockets as a flatpack in a docker container
>>
>>108905888
Now make the levels constants in your source and you're done.
>>
>>108905888
which base64 decoder are you using?
>>
File: 7132e08436c91ddc.png (948 KB, 1920x1027)
948 KB PNG
r8 my 3d model
>>
>>108906197
>8
>corners
>pips
3/10 there was an attempt
>>
>>108906197
Needs more polygons.
>>
>>108903184
Read. Your faggot ai already told you you don't need to, and no
>>
>>108903131
atomic strong force is essentially a very strong spring-damper with a steep curve but actual infinite distance of effect and infinitely small timestep
>>
>making your own engine

Why?
>>
>>108903026
I like your explanation.
>>
>>108904538
LLMs from my experience are awful at lisp, whats your stack?
>>
>>108904963
you don't. it may be several months or years before you get back any motivation back. I don't even fight it anymore.
>>
>>108906197
>1700 faces
I respect that.
never. compromise.
>>
>>108906564
nothing beats typing some code into a text editor and suddently a coloured triangle appears

you could the write the slickest most advanced B2B SaaS app and it still wouldn't beat typing some shit that turns into a spinning cube rendering in real time
>>
>>108906587
just my brain consulting gemini and portacle SBCL. the second i let the ai go independent it went to shit pretty steep. I followed Gabriel Gambetta's pseudo code and added Alan McDonald's equations
>>
File: as long as it works.png (366 KB, 654x478)
366 KB PNG
>>108906564
>Unity: C#
>Godot: not!Python or C#
>Unreal: C++ or drag-and-slop
Because I'm an asshole with objectively correct opinions on everything.
>>
>>108907105
you should try unreal drag and slop
at least for me there's something about visual programming that doesn't trigger writers block...was the same way in college with labview...
>>
I feel like such a chad knowing Vulkan while other anons here are struggling with it
>>
>>108907756
wow, you must have an awesome game engine then that isn't either nonexistent or a toy project that most anons could make in a weekend
>>
>>108907105
>nooooo using a scripting language for scripting is bad!!!
even nes games used bytecode jump tables for scripting behaviors
>>
File: laugh-cant-hold-it-in.gif (964 KB, 235x200)
964 KB GIF
>>108906383
>Read. Your faggot ai already told you you don't need to, and no
There are people in this thread who think gpu does things in order.
>>
File: 1778257479920558.png (335 KB, 633x758)
335 KB PNG
making human models is the hardest thing anyone can ever do
>>
File: pepestare.png (351 KB, 839x768)
351 KB PNG
>>108908353
>There are people in this thread who think gpu does things in order.
Anon, you can force the GPU to do things in the order you specify using things like fences. It's literally a core part of graphics programming. How do you not know this?
>>
>>108908389
>Anon, you can force the GPU to do things in the order you specify using things like fences.
Whether that's required is exactly what the question was asking.
>>
>>108908389
>It's literally a core part of graphics programming
you can make an entire renderer without doing this
>>
File: 1752965102436397.png (129 KB, 366x922)
129 KB PNG
>>108908385
>>
>>108907756
>while other anons here are struggling with it
There are plenty here that don't struggle with Vulkan, but the people here who had little required drive to learn Vulkan are mostly working on their game instead of procrastinating in here.
>>
>>108908796
I don't think anyone who is learning Vulkan is working on a game
>>
>>108908813
>gets filtered by Vulkan
>"I-I DIDN'T WANT IT ANYWAY YOU DON'T MAKE GAMES WITH VULKAN"
Enjoy the OpenGL mark of shame kek
>>
>>108908823
Nobody talking about OpenGL vs Vulkan has even started to make a game
>>
File: 1770614918194561.png (389 KB, 1461x1678)
389 KB PNG
Keep grinding
>>
File: 1754660577702222.jpg (68 KB, 633x758)
68 KB JPG
>>108908931
>all you had to do in 1989 was make a shitty ultima clone and companies would line up to hire you
>>
>>108908980
the cope, lmao
>>
>>108901135
Do not do this. Bloated shit for no visible gain.
>>
File: ogre based.jpg (431 KB, 1400x592)
431 KB JPG
WHERE MY REAL OGRE CHADS AT?
>>
>>108909091
show me a game engine where you can create roads on terrain freely, it has to be lightweight and free
>no unreal engine shit
>>
>>108909025
>Bloated shit for no visible gain
have fun writing out thousands of lines of debug text in real time when every one requires a full memory allocation and deallocation
>>
>>108909116
>allocating a few thousand strings is a problem
Are you a webdev working in JavaScript or something?
>>
>>108909025
>malloc every string is just as performant as stack allocating a few bytes
okay bozo
>>
>>108909116
>allocation and deallocation
>>108909125
>malloc
Thanks for outing yourselves. Back to the vibe coding general.
>>>/g/vcg/
>>
>>108907204
Nice try, Timmy Tencent. Don't you have a TV remote somewhere to devour?
>>108908154
Yeah because they suck. Also we're in a compute shortage and it's not going to get any better anytime soon. I like watching my shit run fast as fuck, and I like seeing how things work behind the curtain, so I do it all myself. If you like watching your shit run slow because you're blowing compute cycles on Microsoft's funny whacky world Java, go use someone else's engine. This engine is mine and it's just how I like it, because I know better.
>>
>>108903072
Most text operations, like splitting or parsing into tokens.
>>
>>108908980
Yep, it was literally simple as until 2005 or so.
>>
>>108909303
When I tokenize text the result token returned is just the token used to test against so there aren't any new strings allocated unless you have a custom token like a literal
>>
>>108909276
You haven't made an engine or a game, you're just a larper
>>
File: akdemo.jpg (130 KB, 2048x2048)
130 KB JPG
since I'm just working on boring shit right now, here's an experimental ak model I made a while ago. I've probably posted it here before but I'd love to hear what people think of this very low poly hand painted aesthetic I was going for. It didn't quite turn out as I'd hoped it would which is why I didn't put finishing details on it like rivets and all of that.

I think I have an idea of how to make this aesthetic work much better next time by adding way more geometry and detail to stuff like the sights for example. The textures just being painted on really limits the kind of lighting you can do to it without it looking really shitty so I would want proper specular and bump mapping next time too. I haven't figured out a good workflow for this style that works for me yet but I'd love to when I can make time, any suggestions appreciated. For this I used blender and krita exclusively, I don't want to use any proprietary software to make shit.
>>
>>108908813
No, they are doing a job at AAA instead.
>>
>>108909258
how would you do it without malloc? im genuinely curious
>>
>>108908813
I'm doing SDL_GPU and working on a game, idk if that counts but I've done enough vulkan masturbatory bullshit and just want my shit to work at this stage.
>>
>>108909590
yes, all 10 of them. the rest just use ready engines.
>>
>>108909599
I'm not involved in this conversation but using malloc and free every time you need any kind of string is a really bad strategy. It's a good idea to have some kind of minimal abstraction for strings and have some other way of managing the backing memory for those strings.
>>
>>108909590
>>108909607
Well one of those 10 is here then because I work at a famous AAA company and I use Vulkan in my game.
>>
>>108909607
>the rest just use ready engines.
Yes and they never make anything worthwhile out of it because even ps1 style games are too much work for one person. Meanwhile, those in AAA are actively networking in the industry to find devs and artists to make their dream true.
>>
>>108909617
so what is your solution then? you cant just answer with something vague like "just have a good strategy"
>>
>>108909760
well if you read the other posts earlier in the chain of replies they're arguing over the concept of small strings and string abstractions. I don't care to weigh in because this is the most boring obvious shit to experienced low-level programmers, you guys can keep going back and fourth about it as much as you want. Also are you the malloc schizo? I missed you bro.
>>
>>108909788
>I don't care to weigh in because this is the most boring obvious shit to experienced low-level programmers
If it's so simple surely you have a simple answer then
>>
>>108909788
>answered with "this is the most boring obvious shit"
you dont get any marks for that non-answer
im not the malloc schizo, i just know that sso is a good optimization and that without it every string needs to live on the heap
try answering the question with a real answer please
>>
>>108909942
>without it every string needs to live on the heap
you ever heard of string views
>>
File: old tibia.jpg (38 KB, 368x250)
38 KB JPG
>>108908980
Hired? Clone? You could just have ripped off ultima and put online for infinite money.

Early bird gets the worm.
>>
>>108899468
Why do you need a contrived string class for a game engine? The only use case of string in a game engine is UI elements which should be read only, and in that case default C strings work just fine. I honestly can't think of a single time I needed to think about strings except for the exception handling strategy.
>>
>>108906821
>>108907105
Do you even have a game in mind or you're just making an engine for fun?
>>
>>108910122
>The only use case of string in a game engine is UI elements
This is such an ignorant thing to say
>>
>>108908931
>aliens ate my babysitter
now THAT is a game
>>
>>108909977
strings and string views are not the same, just so you know
>>
>>108910218
a string view is a string that's just part of another string
>>
>>108910229
sure, but you can only do a subset of string operations on a view. you are comparing apples to oranges
>>
>>108910362
if your strings are immutable then a string view is functionally the same as a string
>>
>>108910161
Name one use case.
>>
>>108910372
you keep moving the goal post. yes obviously a view of an immutable string is practically the same, but only because the immutability reduces what operations you can do on a mutable string. we were talking about strings, no one mentioned mutability. even that doesnt avoid the problem of creating strings at runtime, those still need memory allocated, or should we just say that people shouldnt use any strings that cant be placed in the .rodata segment?
please stop moving the goal posts or restrict the scope to something that suits your interpretation
>>
>>108910410
there were no goalposts established
most of the time strings are immutable
>>
>>108910406
serializing and deserializing data
>>
>>108910438
most of the time? please state your sources and statistics
>>
>>108910551
its something pretty much all languages agreed upon except C
>>
>>108910571
>source: i made it the fuck up
>>
>>108910580
If you haven't used any programming languages why are you here
>>
File: 1778761042222015.png (296 KB, 498x363)
296 KB PNG
>>108897529
Did you use an open source physics engine, or did you write your own? And what is them most complex shape your engine can handle?, asking for a friend
>>
>>108910446
Yeah so, read only strings, same shit,
but really, you would be using a binary format if you are autistic enough about performance to build your own engine in C
>>
>>108910646
>you would be using a binary format
>a
game engines use dozens or hundreds of file formats
>>
>>108910661
Unreal engine, yes, not an autistics hobby engine. Also, you don't need strings at all, if you just use enums. Except in the case of UI, you never need to use strings.
>>
>>108910677
your game engine needs to read file formats exported from other programs
image, mesh, animation, script, data, audio
>>
>>108910598
okay bozo, since you cant argue and only move goal posts or make "because i said so" arguments, ill not entertain you any longer, good day sir
>>
>>108909760
I'm not any of the anons involved in this argument, but you could use a fixed-size buffer. Most strings in the game are knowable at compile-time. For example if you've written something simple that converts strings to text sprites to display your game's dialogue, you would know the relative size the text is displayed at and thus how many text sprites fit on screen at once. You would know the maximum amount of dialogue you display on one page, how many UI elements, etc., all those strings are fixed at compile-time. Even in cases where there's user input, it's usually quite limited. For example, you're not going to let the user name the playable character without a maximum length for the name which is always going to be fairly small, like 8-32 characters.
>>
>>108910661
dont bother, he cant argue in good faith

>>108910686
>in before that idiot says "just preprocess them"
>>
>>108910695
The fact that nearly all programming languages use immutable strings is known to anyone who has actually used programming languages, you asking for source on that outs you as someone who doesn't even program
>>
>>108910703
>>in before that idiot says "just preprocess them"
Yeah that's what you do, but your preprocessor still needs to read the strings
and your intermediate format is probably gonna use strings too because you can't store enums in a file
>>
>>108910696
embedding your game content into compilation isnt a good idea for anything more than a toy project
>>
>>108910696
sounds like sso, but with very hard coupling

>>108910707
>replying with "i made it the fuck up"

>>108910716
sh, dont tell him that. he will just say that enums are numbers, and to replace every string with a hash (completely sane idea too)
>>
>>108910777
No I did not make it up, programming languages exist
You do not win the argument because you are ignorant of basic programming knowledge
>>
>>108910777
Enums are numbers that exist at runtime, replacing strings with hashes is good idea and has replaced most of my string usage (because all they're being used for is to check equality) which is why I don't bother with something like SSO
>>
many of you knee grows are top notch and I really admire your creations and progress
>>
>>108910797
show the numbers, youve clearly used almost all programming languages i take it
why do i keep engaging with you?

>>108910820
hashes are good, but they cant replace strings entirely
>>
>>108910737
Whether you load assets from files or not doesn't change the fact that you know the maximum amount of text you display, the maximum number of vertices your engine can handle, which textures need to be loaded and when, which sounds, etc. You should not be opening a random 10GB file for read then reading the whole thing into memory unless you already know you need this 10GB for something. The size of buffers you need is all knowable by you, the engine developer.
>>
>>108910843
what numbers? what the fuck are you even arguing about?
>>
>>108910847
>which textures need to be loaded and when, which sounds, etc.
You don't, that's the point, your game content is not determined at compile time
>>
>>108910857
>WhAt NuMbErS??
>>
>>108910865
You're very upset about something but I'm not sure what or why
>>
File: 1755693104972333.jpg (31 KB, 456x320)
31 KB JPG
>could just hardcode everything into autogenerated enums at compile time
>want modding, which this completely neutralizes
Fuck
>just release the game source bro
Even then each mod would be a different compiled version of the game, not really sustainable for anything but total conversions.
>>
>>108910871
see >>108910438 and >>108910551
>>
>>108910940
anyone who's used programming lnguages would know strings are immutable in most of them
if you don't believe this you can Google it
>>
>>108910950
"its common knowledge" isnt an argument, its a lack of an argument
>>
>>108910994
like i said, if you don't believe me Google is right there, i don't want to babysit you through whatever tantrum you're having
>>
>>108911009
so you are doing the "educate yourself" as most retards that cant argue defaults to? come on, just tell me in your own words, you are smart enough to do that, right?
>>
>>108911035
I could indeed Google every popular programming language and make a list of if they have immutable strings or not, but I won't
>>
>>108911042
cool, you decided to move another goal post from "nearly all languages" to "just the popular languages"
>>
>>108911055
You are literally arguing just for the sake of it
>>
>>108911060
>oh no i got called out on my bs
:^)
>>
>>108910150
game? we dont make games here we make game engines
>>
>>108911108
game engines? we dont make game engines here we make shitposts
>>
important to use macros everywhere you can.
If something can be a macro, it should be a macro
>>
>>108910882
quite optimistic to not only expect that anyone will play your game, but also that someone will want to mod it
>>
>>108902085
took one look in hereeyes and knew instantly who she'd pick
>>
>>108911160
My concurrent player counts will hit the thousands.
>>
>>108896268
what would be good ui lib for a end user program?
i have the very very beginnings of an editor with microui but odin's version seemed kinda restrictive with privated functions (i was trying to think up a table with clickable rows last time). nuklear looks like a more advenced version of micro and apperently it got used in big stuff
>>
>>108911237
>what would be good ui lib for a end user program?
if it's a game, make your own
if it's a UI application I would also like to know the answer
>>
>>108911237
>anon is scared of privates
Just vendor & edit it.
>>
>>108910625
I wrote the collision system myself but it's not a full fledged physics engine. It's meant for 2d bullet hell games so I don't need anything that complex.
It only works on circles, AABBs and OBBs, which should be all that is needed for the little game I have in mind.
>>
>>108911237
in the past I would have said avoid nuklear for being too low level but with AI you can probably shitout an UI in 10 seconds. It's not exactly interesting code to write so it's a prime candidate for it too.
>>
>>108911439
Really cool, collisions are a pain
>>
File: 1775839761460516.png (807 KB, 1008x1479)
807 KB PNG
>>108910882
>>108910940
I agree with this. Most mods are just nudie mods(that i have used), and are probably secretly made by the developers themselves. People are really not that intrested in tinckering and adding value to others IP. If the level data is in simple files, that is good enough. Popular games get a lot of mods, not because they have good modding tools.
>>
>>108911160
Woooops, this:
>>108911638
>>
>>108911638
The future of mods that neither the programmer or gamer actually wants, is to let AI write the mods for you.
the programmer doesn't want to implement this because it requires you to write extremely protective code that is designed to recover seamlessly from crashing / errors.
So you got issues related to security (you need a strong sandbox), you want to support as many languages as possible (hell), and you need to write an AI friendly API (I bet the AI has never seen this API before and it will attempt to write code expecting it to be run NOT in a sandbox, importing libraries that don't exist, so you need some API that is common in practice, but not low level enough that it will have the ability to make an unrecoverable error, and I don't know exactly how a "recovery" from a crash would look like, sounds like callback hell with repopulating the data and immediately crashing right after repopulating).
Gamers don't want this because we all know that the developer is using AI because they have zero creativity, we can't trust AI bros with using AI for just code / mods for a already-good game, they are definitely going to use AI for generating art and for implementing an AI companion or some LLM chat, and it's going to cost a subscription, and it's all closed source and hosted on the cloud so you can't use a local model or anything.
>>
>>108910882
You can still support mods if you load mods through DLLs.



[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.