Cute Russian developers 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:
>>105555945(by posting here you denounce the talmund and the fake nation of Ukraine)
Why can't we have a proper C# Game Engine for GNU/Linux??? (Godot is NOT proper, C# is a second class citizen)
>>105590435Because Linux isn't a proper gaming OS
>>105590392 (OP)he has a blowjob video blowing some asian subscriber
>>105590392 (OP)I wonder if it is possible in GTK to trigger some sort of animation to bring user's attention to some particular part of the window?
I have this search function, but on a small map that doesn't scroll it is not immediately obvious where the cursor lands after the search, so I would like to have some indicator. Any ideas?
>>105591012Feels like this would work better if the event list were docked. That way, you wouldn't have a big window blocking the view.
>>105591132I could do that too, but the window is probably going to stay because I can use it without touching a mouse. I just type a shortcut which will open the window and then I start typing and press enter. But thanks for the idea, I will consider it alongside this
>>105591019the tranny streamer in the OP blows some subscriber
>>105590435Fuck C#, there isn't even a single decent c++ game engine. Unreal doesn't count and O3DE is still years away from being usable. Godot c++ extension is a third class citizen where the last time I checked their own docs had errors in them.
>>105591283>Unreal doesn't countwhy not?
>>105590435C# is fucking garbage and leads to 16GB memory usage on a simple 2D game structured with circular linked lists.
>>105591404proof? or just talking out of your ass because you love to assume instead of measuring? because celeste proves the opposite
>>105591363Way too large, too little documentation. Simply not suitable for solo development. Things that should be simple take way too many steps. Uses way too many resources. Also it isn't free
>>105590392 (OP)>profound retardation
>>105591283Magnum framework is what you are looking for
>>105591531No, I think I would rather complain
>>105591429dont respond to schizos
what do you name an single producer single consumer class when you dont need to consume everything? like a triple buffer kinda deal. idk what to name mine, so ive called it an SPSCSnapshotBuffer, since well, it only cares about the most recent state
also progress. now i need to find some other feature i can procrastinate with
>>105591558Was about to drop it as it hasn't had a release since 2020 but it seems to still be updated frequently, but only on the main branch and not as individual releases. Makes it a big problem though as there is essentially 0 discussions about any of the new features anywhere except on the github page. Might still give it a try though, nice suggestion
code
md5: 09dd47d1e07e002e94ade3f63b0a3d3e
๐
Being changing my programming language from automatic reference counting to something closer to manual memory management
I'm fine with the overhead of reference counting performance wise but it's unacceptable when dealing with multiple threads, changing the reference count needs to be atomic and all the optimizations that allow you remove some reference counts go out the window because another thread could be operating on an object at any time
So now I have unique_ref / shared_ref / manual_ref to handle ownership, and I use generational pointers under the hood to keep things memory safe so you can't deference deleted objects
>>105591754It looks awesome. Is it scripting? It reminds me of Ruby, but Ruby is too slow. Will you manage to make it faster?
>cute russian edition
yeah sure, I'll shill my game where you groom your cute Eastern European 8 year old daughter along with her naughty mother
https://gitgud.io/teebee/nm
>>105591885No it's native, compiles to C
I don't get why they don't just package pygame-ce on major distros. It would attract more users.
>>105591967Uncle poster finally made a shitty "game"
Hmm, today I think I will try and learn how light probes wor-ACK
https://planetmath.org/derivationofthelaplacianfromrectangulartosphericalcoordinates
>>105592396all that's really not neccessary
>>105591754>he delet the succ
>>105590562sauce or link?
>>105592530I expect thanks for this
https://bunkr.fi/f/T3hYR1EKccuUz
>>105592444Alright fine, we'll just take it for granted and move on to the next ste-ACK
https://www.physics.usu.edu/Wheeler/EM3600/Notes11SeparationOfVariablesSpherical.pdf
>>105590392 (OP)Excellent thread. Upvoted.
>>105590392 (OP)Wait.. that's a dude?
Got NPCs populating the world and moving about. Need to have them slide on edges like the player so they don't clip corners constantly. Also want to add fishing spots that move about.
I notice in a lot of online games I play that some sort of positional hacking (speed,teleport,fly) exists. This must imply that the server is trusting client input to some degree right? Is it just that it's too taxing to verify motion while also keeping things smooth on the client side?
>>105592977The correct thing to do would be to accept client position and then determine if the length of current and previous position is possible at a given speed.
>>105590392 (OP)Why she looks retarded?
>>105592977CSGO runs on input validation I believe. But there's only a handful of players at any given time. Valorant I think also has authoritative movement but it's just a few players.
It works but only as long as you don't have to deal with too many players. WoW still has position hacks, but that may be because they are hacks.
>>105592989>uses teleport spell>gets banned>money stolenWhat they do is replicate the inputs and check if your position is reasonable after some input
>>105592977correct, thats what happens when a server isnt completely authoritative
>>105593483No, most servers are not completely authoritative. Some are, I'm not saying there can't be fully authoritative servers like Starcraft, but for the most part that model adds way too much latency for faster paced games. All the esport shooters for example operate on a "trust the client, validate" model which means each client has its own view of the world. It's why you cant get hit after taking cover. The server and both players have slightly offset worlds from each other, the server allows that as long as it believes everyone's positions, etc. are feasible enough.
It used to be for example with Halo or UT that hitscan was client-side and server-validated and projectiels were fully authoritative, but with Overwatch even projectiles are client-side.
>>105593517>It's why you cant get hit after taking coverSorry, fucked that up. It's why you can get hit after taking cover, because your position wasn't yet replicated to the client who shot you.
>>105593577Can you please explain to the class what relevance this video of your boyfriend has to the thread?
>>105593653POV of the cuck chair
>>105592536The thumbnails were hotter. The video and the album were kinda meh.
>/gedg/ - tranny and blowjob development
>>105593833Meh, you won't be able to resist if "she" licks your dick.
>>105593833>blowjob developmentSounds kino
>>105593833trannies look like THAT?
>>105593904%1 of trannies look like that
>>105591012Please don't use gtk.
>>105593988I need a basedjak that looks like this
>>105594001i gave it a try
>>105594079heh it is okay
Why are the mouse coords that GLFW returns like 20 pixels off in the y axis? Screen resolution on my TV is 1360 x 768. The little red cube above the mouse is hovering almost directly over 0,0,0 in world space, but the mouse cursor is 20 pixels below it on y axis. If I adjust my screen height variable to 748 instead of 768 then the cube and mouse cursor line up perfectly.
>>105594096Window Decorations (Title Bar/Border)?
>>105592536eww, he doesn't even pass. that's so very very gay.
>>105594136I thought about that and then I tried to measure it with my fingers and it looked bigger. That's probably what it is though.
>>105594226uwu kak tebya zovut, milaya devochka
https://www.youtube.com/watch?v=YS_t3FtnQXw
This is a trans, right?
Which faggot made this thread, it is not a /gedg/ so I won't be progress posting in this one
true I'm not progress posting in a tranny thread either
why do older opengl games fuck up newer gpus
>>>/vm/1796345
>>105594096Hey anon, what are you building? Looks very very cool.
I am very fond of wireframe geometric shaped
>>105593951A bit late for that. Out of curiosity, which library do you recommend for a project like this?
>>105594967Oh, well are you at least using gtk2? Just don't use anything beyond that.
>>105590392 (OP)Man, I wish I had a retarded GF.
>>105595060>retarded *bimbo* GF
>half of replies are off topic
I am starting to think using that video as the OP might not have been the brightest idea
Stay on topic, cockbrains
>>105594898A 3d asteroids/diep.io type game. I turn the wireframe on for debugging stuff.
>>105595199How does it looks like without debug mode?
>>105595353Awesome! Keep doing it
>>105595031Well, I'm probably not your target audience anyway.
>>105595402I currently don't have an audience and I am not sure if I will ever "release" this (and if I do that anyone will use it)
>>105595364Thank you, I will.
>>105591754Stop right there.
Never parametrize LinkedList and BinaryTree with a type.
Use intrinsic data structures.
>less bloat>more flexibilityYou'll thank me later.
>>105595701Its just an example
>>105595184You don't have to be here for long to realize how a bad OP image can absolutely ruin a thread.
As much as /dpt/ has fallen, there was always a reason that we insisted that the OP was not your personal shitposting space.
If you don't have anything on-topic to put there, just add a generic not-too-sexual anime girl there.
>>105597903/dpt/ has mucher bigger problems than the op image
>>105597915I know, but it used to be an """issue""" a long time ago.
New login splash screen temp until the real one is done.
I am stumped by this mystery triangle.
the worst part is that it isn't connected to the triangle I draw later in the frame.
>>105598577that looks sweet. though the purple icicle looks a bit out of place
Where does "engine" come into this? Just make a game...
>>105598912Yeah I was too lazy to make a fire sword again and didn't feel like fancy normal sword so I went with a like a '+_5' sword and kind of went into energy sword look.
>>105599139give it some glow and i think itll look better, like a lightsaber kind of glow
true
md5: 295bc6251063761bdfd500a0bf22ec15
๐
>>105599183Yeah I was being lazy and experimental with a few different things. It should be more like pic rel. and that's probably how it'll be in game with a nice pulse on it. Different +'s have different colors for weapons.
>>105599292now you are cooking
>>105590457Content pipeline is fucking garbage (and still doesn't work on Apple Silicon after almost 5 years)
>>105599328>still doesn't work on Applethis is even more of a meme than Linux gamedev
>>105599397Monogame itself is relatively decent (okay support for x-platform and portability across consoles) but it holds onto a lot bloated concepts and XNA legacy, holding it back. Some decent indies have been created with MG, but the content pipeline really sucks to work with, as mentioned.
FNA is even more legacy, trying to be a pure re-implementation of XNA 4 (15 year old as this point) and nothing else.
There's also shit like MonoGame Extended and Nez, which sit on top of MG, but I found buggy, bloated and/or lacking documentation.
Honestly for 2d games you're better off creating a specialized engine yourself using SDL2-CS, SFML.Net or Raylib-cs. It's not that complicated if you know what you need. Take a look at MG(E)/Nez source and yoink what you need if you cba to reinvent the wheel. All are on NuGet and come without the bloat that MG (or even Java shit like libGDX) comes with.
>>105599476>content pipelineIsn't it just a framework?
>>105598947You need your own tools to get stuff done in your way. Everything else is just dancing to the tune of other people.
>>105590392 (OP)Whatโs the best way to add music to your games regarding copyrights? Looks like all solutions are likely to get Content IDโd. And the safest music like Youtube Audio Library are not licensed for games. Even if you add a mute button for music, sound effects can get claimed too. Even currently-safe music, may get Content IDโd because the musician changes their mind or other reasons.
Designing games to be as enjoyable without the music sounds like a very hard task. Especially for story-heavy ones.
>>105599824royalty free music
>>105600115are you mentally ill?
I think I might be mentally ill. This is a dumb idea, isn't it? Probably similar to how Denuvo works but with a polymorphic VM not reliant on Linux, I have no idea.
>>105598580>that indentation>that column width>those variable namesI hate this so much holy fuck Iโm actually triggered like I canโt even
>>105600211whats the point?
>>105600239Prevent multiplayer cheating, support streaming of content and engine updates in game, and the obvious implications of wrapping your game in an encrypted VM.
>>105600277running your game in a linux vm prevents multiplayer cheating?
>>105600293It depends on the cheat, but I guess leaving rendering and input exposed leaves a big hole for wall hacks and the like. But yes, I'd basically be implementing console like security on PC, and securing the network connection from the end user. I know everything is hackable, so it's just another layer.
>>105600332Is that layer anything more than a temporary obstcale?
>>105600340All computer security is temporary if you give someone access to a device, so irrelevant.
fn dbg_file<T: std::str::FromStr>(path: &str, default: T) -> T {
dbg_some_file(path).unwrap_or(default)
}
fn dbg_some_file<T: std::str::FromStr>(path: &str) -> Option<T> {
let i = std::fs::read_to_string(path).unwrap_or(String::new());
let i = i.trim();
i.parse().ok()
}
This must be the lowest-fuss way to get debug variables. Probably it'd be better to have a macro that conditionally enables, etc.
>>105600346Yeah but what's the point if cheaters are just going to crack it anyway?
>>105600380DRM and content streaming with local rendering, mostly.
>>105600398denuvo already exists and it's harder to crack than your idea
>>105600211>This is a dumb idea, isn't it?yes
>>105600277i dont think you understand how cheats work
>>105600430>>105600401I'm making a Habbo Hotel clone, I think you gentlemen may understand my obsession with security. I might just have it require a TPM.
>>105600462My knowledge of cheats is old, but I would assume the practice of hooking into the renderer and getting positional and player related variables from the engine to decode the current game state. Additionally network injection.
>>105600501Why the fuck does your Habbo Hotel clone need client-side security? Do everything on the server
>>105600510It's going to be peer to peer to save on hosting costs. Since the server is hosted locally on their machine, they won't notice any network latency issues on their side.
>>105600534>It's going to be peer to peer to save on hosting costsI'm sorry but that's moronic
Servers are cheap, peer to peer is unstable and grows exponentially more unstable the more players you have
>>105600546You're right, I should BSD instead of Linux.
>>105600501>habbo hotel>worried about people wall hacking>requires tpmwhy arent you doing post quantum encryption yet?
>>105600788Is there Python library for that usable with a BSD kernel?
>>105600850>he isnt using the xorfuscator to ward reverse engineering, but he uses python
Fixed NPCs clipping into the player. Also changed it so that walking on certain tiles removes roofs and dims tiles and other objects outside of interior spaces. Now I can actually work on mechanics.
>>105600534>save on hosting costsyou're going to spend more man years than you have left alive building obfuscation to save on hosting costs?
Testing on steam deck, I think I figured out why most Monogame games are capped at 60fps. Shit gets weird fast.
I finished my first pass implementation of a ui framework
>buttons
>menus
>basic way for me to layout hierarchical ui elements
>hierarchical input handling
>works for keyboard and controller
Along with this I implemented a pause screen so players can restart or quit missions.
Got it deployed to itch, feels good. Looks much better than the primitive button press instructions I had before, and it will be easy to build out new stuff from here.
Next I think I'll add the Vamps (humanoid) form to gameplay.
how hard is it to write a 3d video game engine from scratch I'm half jewish half chinese btw
>>105602856>how hard is it to write a 3d video game engine from scratchIt's easy, keep track of objects using X,Y, and Z instead of X and Y, then draw some triangles.
>I'm half jewish half chinese btwSorry to hear about that.
>>105602856Pretty much impossible without a team of crack devs and at least $100,000,000 USD in funding.
>>105602856>I'm half jewish half chinese btwSteal someone else's
>>105602856>I'm half jewish half chinese btwThat's an insane combo
>>105602856>I'm half jewish half chineseHOW
>>105602856It's extremely easy with vibe coding
>>105604239the socks just weren't enough for you, huh?
>>105592536>most replied post its gay blowjobThis board is full of faggots
>>105604399It is not gay if it looks like a woman, retard. It doesn't matter what your brain says, you cannot control your instincts
You see what looks like a long haired blonde woman with symmetrical face and nice tits, you get hard. End of story. No ifs and buts from your brain will prevent it.
>>105604510i would kill myself if mom found my girls with pee pees collection
half this thread is talking about game dev and the other half is talking about the mentally ill russian guy
fuck this gay shit
even reddit is less gay than this faggot shit
>>105590392 (OP)ITT: nocoders (posted without reading)
>>105604744>even reddit is less gayYou can go back anytime, sis :)
>>105594096I've been dealing with this as well. For windows the mouse x and y I get from calling raylib's get mouse position function links up perfectly where it's supposed to be but for Linux it does not. My solution is a hack but it works kinda ok. Basically I hide the system cursor, just get what index of my grid the mouse is hovering over based on what my game thinks and I draw a fucking circle right at that cunt. Funny because at 0,0 the mouse lines up perfectly but as I move the mouse closer to X = X and Y = Y the cursor and the mismatch to where the game thinks it is increases. If I have no idea why this happens on Linux but not on Windows.
I've been trying to fix a really weird stutter for a while now. It's weird for many reasons:
>I have made demos for like a year and none had this problem before
>the stutter seems to have nothing to do with rendering, since it shows up even when all textures are taken off and replaced with lines
>tried profiling the entire program using SDL_GetTicks() and I haven't found any significant performance spikes
>the stutter is easily reproducible, it happens at the edge of a block in the tilemap, so it must be a problem with the tilemap code?
It turns out that it was a problem on the CPU side, when creating and deleting tilemap data in a per-frame basis. The stuttering must've been caused by the garbage collector then, but how am I supposed to profile something like that? I'm actually really frustrated that there weren't any performance spikes, how is that even possible? This sucks.
>>105605107Don't use a garbage collected language?
>>105605216I will not rewrite my game in C, stop tempting me.
>>105604510Lmao, futafag L
>>105604832That sounds like a (fractional?) DPI scaling bug. You're probably on Wayland.... and it's probably your own bug. Try changing the DPI scaling to 1 and see if it goes away, but maybe you could test under different compositors or X11.
>>105605107what language?
>>105605877with a garbage detector?
>>105605941why are you replying?
>>105605919>garbage detector
Got bored and implemented scaling for arbitrary resolutions. It tries to get a vertical resolution as close to 360p as possible and then scales back up from there.
whats the best programming language
>>105605955I'm too demotivated to rewrite my code right now, so I'm going to stay here just a bit longer.
>>105605976Cool. Make your window resizable, like a flash game.
>>105605521Thanks for the suggestions.
>>105606118>>105594891Historically, OpenGL had god awful conformance testing.
- Maybe the game was doing some dumb shit that old drivers let slide but causes issues on new drivers
- Maybe the drivers back then were non conformant and the game was written against those
- Maybe it's actually the modern drivers that are the one fucking it up.
Or something else entirely. Go file a bug report against your GPU driver or whatever. Running it under Linux with Mesa might be interesting to see if it works.
>>105606101>Cool. Make your window resizable, like a flash game.If I can get the interface to work vertically I likely will at some point.
>>105605877They added garbage collection to c++? What are you doing, having smart pointers go out of scope and be recreated every frame?
Was thinking about writing something in C# using the Vortice DX bindings. Some of the code has to be written in unsafe blocks which I never really used before, does that cause any issues down the line with distribution? I could see Windows getting all gay and screaming warnings at users or something if a .NET program is doing scary things...
>>105607464That's not what "unsafe" means, it's not considered a problem by the OS
>>105607470I know what it means, I just figured that Windows would complain if it can't easily reason about what a .NET program is doing.
>>105594574yeah but xhes hot
>>105607464chat jippity
should be fine if it's just a normal windows program which it is if you're using directx
>>105607518wrong thread, wrong board
>>105607525Why are you asking an AI to provide you factual information?
>>105607537because it's smarter than asking anons on /g/ at least
>>105607543Do you know what a search engine is?
>>105607550can you're search engine do this?
>>105607543AI makes up shit and presents it with confidence all of the time.
why are there literally no resources on making game uis correctly
>>105608535Maybe cause there's nothing really difficult about it
>>105593023She has the facial expressions and mannerisms of a very young child.
>>105590435Why would there be? C# is a windows/microgay language. Why would there be a linux engine? C#/windows games generally work fine on linux, so just use unity or whatever gay C# engine you like.
>here bro I'm just gonna make one of these uids for every single one of your files
>ohhh and don't forget to check them in, they're important!
>ohhhhhh yeah and make sure if you move any of your files, move the uid file too! It's super important! trust me bro
>>105590435https://opentk.net/
>>105609040>anon asks for game engine>you post low level openxl library>litterally states in faq "it's not a game engine"absolute state of /g/
There's no reason to use the content pipeline anymore. Just grab a font library and everything else can be loaded from the filesystem.
https://flibitijibibo.com/xnacontent.html
>>105609583Just load graphics asset from the filesystem and create a texture atlas on the fly during game load.
You don't need bloat like texturepacker unless you're a nocoder jeet.
>>105608850what do these even do?
>>105609749https://godotengine.org/article/uid-changes-coming-to-godot-4-4/
Stop using GDScript. Use RDScript instead. It has structs and traits (inspired by Rust!)
>>105609797>The godot fork made as a response to Godot's identity politics BS is being inspired by rustThere's a weird irony here
>>105609770what the fuck is wrong with filepaths
>>105609770I love how the rationale is "big boy engines use UIDs, so godot must". Get fucked.
>>105610017>big boy engines use UIDsdo they though?
anyone have anything decent on setting up more consistent stable diffusion setups to be able to make style-consistent art assets for games?
juan
md5: eca6162425dc598deb91e028f7b40ba4
๐
>>105609797This is definitely a huge overscope for a handful of chuds who still care about woke outrage
>modern c++>modules>boohoo long files badThis is some shit I'd expect you retards to care about.
>>105610402What is godot written in currently? C99, isn't it?
>>105610411of course not, it's c++. Like everything else that runs the world we live in.
I think it's c++11 flavored mostly and their style guide prefers for contributors to not use more modern features.
>>105610402>muh chuds>godot goodLol, lmao even
Not defending redotards though, they shouldn't even use godot in the first place
>>105610433sorry anon you missed the memo gaydot is woke now
>>105610472Listen here, codecel. While you're busy coping with your fifth GameMaker project that crashes if you sneeze near the inspector, I'm out here pushing 100k concurrent players through a fault-tolerant cluster running on the BEAM VM.
>B-but muh latencyErlang was literally designed for soft real-time systems. You think shooting a rocket in Quake is hard? Try keeping a phone call alive between two drunk Swedes in a snowstorm in 1993 on a Nokia switch. Erlang did that. With pattern matching. And zero downtime.
Meanwhile your Unity build stutters every time garbage collection burps.
>Nobody uses it for gamesCool story, bro. Nobody uses deodorant on /g/ either but here we are.
Real devs donโt follow trendsโthey build systems that donโt die. Erlangโs supervision trees make Unityโs null reference spam look like babyโs first stack trace. You ever tried hot code swapping an NPC AI module in production without restarting the server?
No?
Then sit the hell down.
>>105611720strong nodev energy radiates from this post
>>105611720I always wanted to try writing a MUD in erlang but it seems like a lot of work so I just take a nap instead
>>105611786/g/ is fucking dead, nobody noticed it
>>105600211Depends on the game.
FPS / TPS ? It'll work but it'll lag.
The industry standard is let the client play, and server corrects.
I just won't use any code written by gay people for my game! ugggh, I know, sorry! but I just won't!
>>105612110So you have to code the game without a Turing complete language ... GL
>>105612122>Dennis Ritchie>sexual affiliation: straight
is there an alternative to _getch() that works on MacOS? would use curses but I'm tinkering with my game on both my windows PC and my mac laptop (at work) and I'm trying to keep everything as compatible as possible
getchar() is fine but kind of annoying because it requires a return
>>105612903should mention it's all in C
adventure game where your stepsister is stuck and you have to save her
Thoughts on software rendering?
>>105612903note that anyone on mac who is serious about playing games would just use crossover or whatever free wine alternative, and the population of gamers on mac is miniscule.
also unless your game is on steam, users would need to self-sign the binary with xcode or whatever, and I would be surprised if it's possible to have a terminal app on the app store (but the app store requires a developer license).
If your game is a GUI but you use the terminal for a log + startup errors, I would just suggest using something similar to SDL's pop up messagebox instead (but it does not support text input) to keep the terminal open (on mac / linux, the application needs to be started from the terminal for a terminal).
If you want to suffer a tiny bit, you could code your own terminal using something like SDL and then use emscripten to build your game on the web (or make your UI using JS / HTML elements which is real annoying to debug your C++ code since you can't step through your wasm code on the web).
I don't know the answer to your question by the way, the last time I messed with terminals I would just use std::getline() on C++ which only works with return, which is not the same as getch (and getline does not like working with >> / scanf, but I would just getline all my strings and just parse each line manually using a C++ stringstream if needed, that's how I did most of advent of code).
I think osx should have C's getline in posix (but not on windows). If you just googled or asked AI your question, they would probably tell you to disable echo or something using linux specific functions or whatever and use something like getc? (which is similar to what curses does internally).
>>105613684>ultimately still has to send the image to the gpu every frame using directx/opengl because that's just how modern pc video output works unless you're programming for retro hardware or something
>>105614041>directx/opengleh, aren't gpus required to have some kind of vga emulation or something? you get video output before your os even boots so clearly it's not using any fancy graphics apis
>>105613684Divide the image by core count and have the cpu render that segment of the screen like the new Doom port.
>>105614073VGA text mode and UEFI, nothing you can use from within Windows. Software rendering is just a learning exercise or because you're doing something extremely specific like trying to "accurately" emulate an old game console.
I want to know who this girl is. I see her videos about Godot out of context sometimes
But I want to know what is her actual channel name
>>105613684It's a very deep rabbit hole, good idea if you like to create MS-DOS graphics quality games.
CPU shaders are an untapped potential.
>>105614041Windows has GDI
>>105614549do you think GDI is magic, anon? for ages now all Windows is rendered through DirectX under the hood
>>105614557>Uhm it's not ackshually software rendered because the hardware existsoh wow, so profound mr retard
>>105614557In 100-200 lines of code you can make a bare bones win32 window which displays on the screen the pixels you want to draw from some buffer.
You render however you want to that buffer you completely control, then you call a function that sends it to the win32 api to display it to the screen, whatever method win32 uses internally.
>>105614586No it doesn't count because there is virutal memory, it only counts when you write you own OS and draw directly to physical memory
>>105614578>>105614586>it's not using directx because I'm not personally calling directx, instead the api I'm using is calling directx!
It seems BigGPU doesn't want you to make your own software renderer.
The algorithms themselves are small but a bit hard to create them all and tie them together and have them work perfectly (with no pixel artifacts).
The GPUs only execute those small pieces of code in a massive parallel fashion.
>>105614602acktshually, it doesn't count until you generate video signal by manually pushing electrons into the wire.
>>105592977This isnโt true , right?
Like Iโm pretty sure I could code this.
>>105613684Offline rendering, perfectly fine, maybe even preferred in some situations.
Real-time rendering, obsolete as fuck, and doesn't scale to modern resolutions and frame rates.
>>105614073You're giving your software buffer to your compositor and that's essentially just doing all of the uploading stuff to the GPU for you.
>>105614603not anon, but really old GPU's had special hardware targeting GDI hardware acceleration (XP only), but now it's only done by the CPU, and the only hardware that GDI supports is blitting to the screen (and it's really fucked up because it seems like to make the fastest blitting GDI code for modern PC's ends up destroying the performance of XP because GPU's with GDI hardware support require a different bitmap format).
https://www.reddit.com/r/Windows10/comments/v9xk3h/moan_the_dirty_backwards_secret_of_gdi_since_win/
https://www.tomshardware.com/reviews/2d-windows-gdi,2547-12.html
Now does GDI's blitting use DirectX? Or does the driver vender choose? Or does windows require the driver vendors to support a path for GDI to blit with the GPU?
>>105604832That's what I ended up doing last night. .
>>105611720>I'm out here pushing 100k concurrent players through a fault-tolerant cluster running on the BEAM VM.yeah, maybe for a turn based game
>>105611720this reads like a copypasta
>>105616303its ai generated
>>105590392 (OP)insanely obvious it's a dude when you can see hands and torso
>>105613913I'm not too worried about the audience and/or steam, it's a traditional roguelike that does all of the display inside the terminal, so I'm aimed at an extremely niche audience already
>If you just googled or asked AI your question, they would probably tell you to disable echo or something using linux specific functions or whatever and use something like getc? (which is similar to what curses does internally).It took a surprising amount of digging to find the solution, which ended up being only a few lines of code.
#include <termios.h>
#include <unistd.h>
static struct termios old_settings, new_settings;
void displaySetup(void) {
tcgetattr(STDIN_FILENO, &old_settings);
new_settings = old_settings;
new_settings.c_lflag &= ~ICANON; // Disable canonical input processing.
new_settings.c_lflag &= ~ECHO; // Disable echo.
tcsetattr(STDIN_FILENO, TCSANOW, &new_settings);
>>105617235you are better off using SDL and just drawing a spritesheet onto a grid.
it might look more simple on the surface to use the terminal API, but the second you try to add in any feature that isn't trivial, you encounter a lot of problems (fullscreen, upscaling, mouse input, custom tilesets / graphics, animations, emscripten).
Also you have not answered how you are going to get apple users to use your application. I don't use apple and I don't know much about it (I couldn't figure out how to install Xcode in OSX KVM without a phone number), but is there something that I am missing that lets you easily share your binary on apple?
-Users can't run unsigned applications.
-If you did sign (and paid $100 for the yearly developer license), you can't put a terminal application on the app store (I expect that there is a emulator like XTerm for apple, but I can't find anything)
-Self signing is more complicated than using wine / crossover (needs Xcode?)
The only magical solution is maybe homebrew is a lot more easier to publish than I expected? Or maybe you don't need to sign / self sign for terminal applications?
>>105605877There's no garbage collection in C++ unless you use some third party library.
index
md5: b73d673a83353742dfea4c33e33f0057
๐
>>105613684giga hyperborean exachad 800iq move
>viable in the age of MORE CORES>can do literally anything; raytracing, voxels, procedurally generated bees>can be extremely specialized for the game>works in a hypervisor without gpu passthrough>works on the chuddest, librest and meanest OSes>portable like the unix virus>can accelerate with compute anyway>gpu completely free to do AI inference>dependencies: C compiler and assembler
this thread is half retards who think software rendering is cool and half tranny fetishists
where are the fucking game developers
>>105617493You're saying macos users can't install random software? That sounds crazy.
>>105618227>procedurally generated beesI never thought I would ever hear that again.
>>105611720>Real devs donโt follow trendsโthey build systems that donโt die.AI generated mannerisms
If you had to write a cdda/dwarffortress/cavesofqud-like what stack would you use?
>>105620032C# with Raylib-cs
>>105595353nice shitting rabbit simulator bro
bump
what is gedg working on right now?
>>105620032C or Go with raylib
>>105621889just finished a major rewrite of module system in my engine to facilitate automatic generation of docs (API reference).
anything not to do any real progress.
If I want to build something with SDL3 + sdl_gpu, should I learn c or c++?
Apparently c++ is a must if you need to work with vectors, but if most of the "graphical" stuff will be handled by sdl_gpu, there's no need to do it in c++, right?
>>105623839You are not at liberty to choose C over C++ until you at least know both languages well enough to answer the question yourself.
>>105623892I don't want to learn two languages before making a thing in one of them. Besides, I've gone through K&R book years ago and solved all of the exercise, so it will be easier for me to pick up C. I know that doom was written in C and it was fine... So I wanted to know, am I making a mistake by avoiding C++
>>105623932just use c++ like you're writing c with benefits
>>105590392 (OP)fuck, I was 100% sure that video is AI and was waiting for some unimaginable horror to start happening
>>105623839C++. there's no reason to go with C over C++ in 2025 AD.
>>105624311human readability
>>105618384most random software is open source and apple offers a free license for open source projects, so those applications shouldn't need to pay $100.
but if it's closed source, and it runs without problem, and it's not a python or some scripting language, and it's not part of some launcher like steam, they probably paid $100 for the license.
turns out you don't need to self-sign the binary with a 3rd party application, it turns out you just need to ctrl click on older OS versions, or just go into the system settings and manually give permission to the unsigned app, or just run a sudo command to completely disable the security check globally.
>>105624494anon no mac user knows wtf you're talking about
>>105590435Doesn't Unity work on Linux?
>>105624511I honestly think signing C++ code is probably the easiest part of getting C++ game running on apple software.
The part that intimidates me the most is that I would need to learn to use CPACK in cmake to make an appimage on apple (AND get that working in such a way so that it works with ARM and x86).
BUT if you just put your game on steam, it would just work without signing. This is more of an issue if you want to give people a zip archive for apple users, or you want the program on the app store.
There is actually a huge benefit for paying $100 which is that you get crash reports, stacktraces, as long as you upload your symbols. The same thing is possible on windows (WER reports) BUT it's 100x more complicated because I think that information is only for businesses, there is no simple solo dev way to get those crash reports / knowing how many people are using your application / which country on windows.
>>105624494Ok, I'll scratch any plans of releasing anything for mac if you have to pay. I had no idea it had gotten so bad that user's can't run whatever software they want.
why cant gamedev be ez like it was on the c64
>>105624601It's more ez than ever with all the available toolings, frameworks, documentation, and tutorials literally everywhere and LLMs to write algos for you.
You're not being filtered, are you, anon?
>>105624601The Windows programming API should be implemented as memory-mapped registers.
>>105590392 (OP)Stop posting this faggot.
>>105617235Maybe you will want to debug your roguelike with gdb. Experience has shown me this is trouble because they will be fighting over the terminal. What you can do is open a new one and
$ tty; sleep 99d
/dev/pts/123
and in gdb
(gdb) tty /dev/pts/123
This has some deficiencies but idk how to fix them.
>>105624104Wow thank you I will never watch another video from the internet in my life.
where would a gamedev go to find someone to do some artwork for the store page / previews? I tried looking through Fiverr and the vast majority of it is obviously AI generated, even on the non-AI sections.
Also most of the real artists I've seen want like $500+. is this standard?
>>105625460a decent design can take 10+ hours
Tried to use those free Pixar textures downscaled, but I don't think I'm a fan of it overall.
>>105590392 (OP)https://youtu.be/qYzi7x_BBUc?t=1563
I have a question about Vulkan pipeline caches.
I know the main use is to save it to disk, to speed up compilation on subsequent runs of your program, but is it appropriate to use as a general purpose cache? E.g. I load 100 gltf models, and they theoretically could have different vertex input formats, so could need different pipelines. Could I just create a pipeline for every model individually, and the pipeline cache just deals with it and not waste a ton of resources? Or is this misusing this API and I need to do my own caching?
Is there any good examples of horizontal scaling in a game server? Multiple servers handling the same region, sharding game regions across servers? I see a lot of half way examples, but I've yet to see a complete, cohesive game world like that.
>>105626966That's what chunks are for.
>>105626973I know that, but so far the only game I've seen that does it seamlessly is a mod for Minecraft. But I'm trying to figure out a good architecture that doesn't bottleneck at the world data source, and actually does handoff correctly.
>>105626966>Multiple servers handling the same regionnot really viable
>>105626993>>105627000I just realized you mentioned multiple servers for the same region...why?
>>105627004Probably the same guy who thinks he needs a Linux VM for anticheat
>>105627004>>105627014Minecraft is what got me into programming, and I've always wanted to make an open world game in a fixed world where everyone had the option of playing together. Different games approach that in different ways, but one consistent issue is local performance - get enough players in a room together and it slows to a crawl. I'd like to build a game where there is a great deal of complexity in a fixed game world, and parallelizing different aspects of it would go a long ways in achieving my vision.
One idea is the concept of game object LoDs. I want the player to be able to see everything in the world as it occurs, with the same distance you'd see in real life - someone builds a skyscraper, and then knocks it down, you'd want to be able to see that from really far away. So I've designed a system where a dedicated server processes "the big picture" into different LoDs that are served to the player. But that same complexity in a small area would put the server handling that area under stress, and you can only vertically scale so far. So I'm hoping to model out some mechanism to distribute world segments without a loading screen.
>>105627102Unless your playerload gets massive it can absolutely be handled on one server. Pretty much all mmos were like that until like 2007.
>>105609797nigga no one who wants to make games gives a shit about any of this
>>105627102>get enough players in a room together and it slows to a crawl.There's basically no solution to this, which is one of the reasons MMOs have become more instanced
Like early during WoW's lifecycle they tried to do server-wide events, they caused massive instability so they stopped trying
But if you're talking about large persistent worlds with players who are spread out that's possible
>>105627223One idea I had was to delegate different layers of the world processing to different instances - one for world geometry, one for physics, one for the "game object LoDs" I described, and then a cluster where each handles a certain number of players. Those would take incoming world changes from the other servers, lump it together, and serve it, as well as sync player info within the cluster. A top level coalescing service would aggregate the world state into frames and store the frames, keeping the latest couple in memory so new instances could get up to speed quickly. But then the coalescing service becomes the bottleneck, and I've wasted a bunch of money and effort getting back to square one.
>>105627588You should probably make a few games before you start having big thoughts about architecture because that's a really stupid idea for several reasons
It's not neccessary to split up tasks between servers, and the latency would be unbearable
>>105627588You're thinking about things that you probably won't even encounter. My current game runs in the background while we're devving and takes no hit from processing everything. Think about old mmos from the late 90s/early 00's and how many thousands of players they had running on that old hardware and compare it to modern hardware.
>>105627613I've made a few, but not MMO style. I come from a weird mix of game and enterprise (not Java, not a brownoid) development. Some of the latency can be mitigated with game design choices, but you are right in that it would be slower. Slow enough to kill the game? Not sure, which is why I'm asking around while prototyping.
>>105627708What I'm trying to design around isn't necessarily players, it's that the world itself will be very compute heavy, and I'm also thinking longer term if it reaches sufficient scale, if I'm already splitting out other bits, why not see if I can split players as well?
>>105627728>the world itself will be very compute heavyWhat do you have in mind that's so heavy a single dedicated server can't handle it?
Either way it'd better to split things up based on region rather than task because if you split them up based on task then you'll be bottlenecked on data transfer
>>105627728>>105627748>Either way it'd better to split things up based on region rather than task because if you split them up based on task then you'll be bottlenecked on data transferThis. Latency is going to be a killer if everything is being processed by something different and needs to link back up and then be matched.
>>105627748If I can get a good prototype going for the split architecture, I was hoping to incorporate more and more complex simulations into the world and the NPCs. If I got far enough down the rabbit hole I even wanted to experiment with offloading some parts of rendering to the server, which would let me do really wack shit even on low end devices.
>>105627776That's fair. I would wager even best case scenario I'd be looking at 500+ ms round trip latency across the layers I currently have in mind, not including compute between ticks
>>105627790>offloading some parts of rendering to the serverYou can't do that because of latency
sat
md5: cad0990e292ad3adc95f92da55f62110
๐
My separating axes theorem debug visualizations, let me show you them.
>>105602856Each individual task is easy but all tasks combined will take you 5 years.