/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/
Best AI game dev: https://grok.com
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:
>>105853772
damn why is gedg so dead now
New pc is setup. No more craptop adventures once I install Arch Linux on it tomorrow, its like the end of an era.
>grok in the op
nibba why ...
>>105911606Did you get back into physics?
I've decided on using Clay. I will have to write something like this
https://github.com/nicbarker/clay/blob/main/renderers/raylib/clay_renderer_raylib.c
but for Vulkan. Might take a little time.
>>105911679Not yet ... Working a decent night job. Just real tiring. I go in for 9 to 10 hours usually, little time to dev.
>>105911597use case for game engine development thread?
>>105911597Everyone who uses a game engine to make a game gets chased off to /agdg/.
The current thread has over 700 replies.
>>105911606solo devs need all the help they can get, grok 4 heavy is crazy good, the coding version will be released in august.
>>105911845>solo devs need all the helpto add another drop in a bucket of slop?
>>105911078 (OP)Is programming unironically over?
gamedev turned from cool niche tech hobby/job into slop shop. it's so ubiquitous it became deragotary.
every normie is making "games" now. making a game is the first thought that comes to mind for mediocre people.
don't make games. there are many other software niches you can fullfil. gamedev is full.
I started a new project with Godot, I come from LWJGL and doing shit myself. Unity is fine but I didn't like the paradigms offered, particularly for 2D. Godot seems okay so far but I've never used it and I'm only a day in. Any advice?
>>105911597agdg users co-opted the general and slipped the "and" in there so it just became agdg2 with no relevance to technology
How do you store the state of folded regions of inspector in your editor? You store it... right? You... have editor for you game engine... right?
>>105911597gedg is full of retards and hostile to progress
Hello anons,
not sure if this is the place to ask or not, but thought I might as well.
I'm almost finished coidng my first actual game, it's like a 10 min visual novel thing
Is there place where I can talk to any artists who wanna collab on this board or elsewhere?
the "collab" is just one sprite and one background
I got some stuff with AI to serve as placeholder, but i don't wanna go with it obviously.
thanks in advance!
>>105911078 (OP)did grok also make these sprites or just the code?
>>105913991maybe agdg in vg, other than that idk, maybe a, 3, co, or jp, they are somewhat art related or have had games come out of there
>>105911078 (OP)>Previous: >>105853772 (Cross-thread)>looks inside>points to previous-previous thread, skipping the actual previous >>105896145 OP is gae
>>105911721>I've decided on using Claynoice!
>Just real tiringsame. I am going to be very tired till the year end baka
I would chime in to help you if I had any time to relax (๏น)
>>105912211no.
>>105911721>https://github.com/nicbarker/clay/blob/main/renderers/raylib/clay_renderer_raylib.c>C>header only>4K LOC of unreadable garbage>immediate mode guiclassic /g/lop
>>105912462>agdg users co-opted the general and slipped the "and" in thereIt was like that from the start retard
>>105915795>It was like that from the start r*tardnewfag detected
>he actally believes frog faggot invented the game engine threadgo back
>>105915831>r*tard>he censors "retard"Go back retard
>>105911078 (OP)Ok so is Grok good then? How is it compared to Claude 4?
>>105915841f*ck you little b*tch. my **** mom installed some software on my pc preventing me from doing so
>>105915849Grok is hitler, claude is churchill
>>105915834purely a skill issue
>>105915831I was here for the first thread newfriend
>Indexed format surfaces no longer have a palette by default. Surfaces without a palette will copy the pixels untranslated between surfaces.
Wait, they fixed indexed surfaces in SDL3? I might actually have to upgrade.
(Seriously, who wants their pixels "translated" between surfaces and for what reason?)
>>105915872Are you telling me to use Grok?
>>105912392yeah no shit back in the 90s/2000s I could tell people I was a gamedev and people were super impressed, now I'm embarassed to tell anyone what my job is
>>105912392i will not let demotivational crabs like you tell me what to do
>>105915834pain, suffering
>>105912392thanks unity and thanks steam 100$ free access
>>105915269macros in C were a mistake
if you are using macros to extend the language like that, you'd better off not using C at all, that is just some higher level retardation.
By using macros you reach point you're not using C anymore, but an frankestein abomination
>>105918963if you're thinking of using it to create levels like Quake don't bother, it's depreciated
>>105918989Deprecated? What else am I supposed to use then? Itโs a good idea though innit?
>>105919067CSG was used to split map geometry into BSP trees, which were used to accelerate rendering
These days BSP trees are much slower than other, easier methods like octrees
>>105919096How do I split map geometry into octrees?
>>105919233Create a box around all your geometry
divide it into 8
put all the geometry that fits into subboxes into the subboxes
if a subbox object counts exceeds X, repeating the algorithm on that subbox recursively
>>105919067I use func_godot. It's maintained by trannies or whatever but I don't care; it just works.
pill
md5: 28e9f2222d2d17b086f03dd0350df0c5
๐
Theoretically how does one get out of "this" stage of game dev?
And how the fuck do you actually code and get over using free assets?
Can you really make a fun game using free assets or do you have to make everything from scratch to have its own flavour.
>>105919609make what you want, slowly one bit at a time. just keep your scope small as you will underestimate the difficulty of adding what may be perceived as relatively basic things. if I were you I would not even worry about graphics past very basic or free assets. your goal should be to make something functioning and as fun as you can with your limited resources. your goal should not be to make a product to sell; at least not your short term goals.
>>105919678I once created a horror game in the woods in a valley. It was retro styled graphics. I lost the project because I didnt really care that much and didn't back anything up and also simultaneously gave up because it was too complex to code a flashlight that looked good, as well as rain and thunder I wanted to add in godot.
IMO vision isn't hard coding and artwork limit me.
>>105919609>Can you really make a fun game using free assetssure
game
md5: f5f09edabe231235c7857b32dbeb16e2
๐
>>105919748>>105919886Here's a photo of the game I was working on, This is the only photo I have of it, I gave up on it though. I didn't like the premise of a horror game, and realized the scope was too big.
I want to make a simulator sandbox game as my next game
Random game design question
How would the core gimmick of the classic Monster Rancher games (i.e generating abominations from CDs/DVDs) work in the modern era where digital media reigns supreme?
Take in files from your PC's filesystem? Look at games on your steam library (if a steam game that recaptures the essence of monster rancher can even do that)?
>>105920313Does it even matter that much? I thought Monster Rancher was about grinding to compete. You could do anything that generates a unique key that then generates a model.
>>105920505It's not a unique key thouctually, it's a prng based on the hash of heterogeneously distributed physical media
>>105919609ask pirate software next stream
>>105921278Well I saw a video on his new game and it sucks.
I guess artwork doesnt make a game good.
is grok 4 heavy better or claude opus? ai is getting scary good
>>105921399doubt
could ai help me code with vulkan?
exactly
Working on the ability to add shapes to the ship
game
md5: 722de3437902b085ce147aa384b0ac46
๐
Ok I have my game, now what do I create?
>>105921765big tiddy anime girls
>>105921657Captain Forever!
>>105911078 (OP)How do I make games as a C fag? I refuse to learn anything else
>>105922323I feel like if you're a real C fag you should already know this answer.
>>105911078 (OP)Heyo.
>>105911597Because there's no me, due to shitty 900 then 120 seconds thing, also there were no worthy threads except /chad/ and /gedg/ here anyway.
---
Image related, making tiny NPC behavior library for RPG games, simple stuff, code is self-explaining, there's no Git link for it yet, ggs ez.
>>105922323Use Raylib, if not that then SDL 2 or 3, avoid ncurses unless you reimplement it yourself, don't bother with XCB, OpenGL or Vulkan like me.
>>105922366You never tried notcurses?
>>105922366It goes away after like 5 posts. Can't remember the last time I had a timer.
>>105922323Read quake's source code.
>>105922339he said learn though, so he's not a real c guy yet but he wants to be
>>105922323ask grok 4 and he will give u a better answer than 99.99% of the internet
>>105912392yes but no one is making what i want
>>105921765I turned it into a clone of flatgrass
>>105922840Added more contrast, saturation and brightness to the world environment. Made in godot 4
it's over
https://www.totallyhuman.io/blog/the-surprising-new-number-of-genai-games-on-steam
maybe it's time to start wayland servers instead of game engines
>>105922898shut up Ichiro Lambe
>>105922698This. My game is literally "X but you can do Y" and nobody has done it even though game X exists and game Y exists. And I waited a long time, there comes a point when you just have to accept that nobody else is going to do it.
So, why isn't there a opengl like library on top of vulkan yet? With AI and all that? I thought it made programming obsolete.
>>105922898nooo think of the artists. gamedev is reserved for people with millions of dollars to spend on creating their own code, art, music, textures, voice acting, etc. we cant have ai help the small guys
>>105923045You are missing the point. Making a game today is like pooping in the middle of Mumbai streets. Nobody will notice you.
You'll just waste time and regret it later.
Yes, you need millions of dollars just to have a chance to stand out and be noticed.
>>105923076that was a problem long before ai was a thing. once greenlight was abandoned, the flood gates of asset flips were opened, now ai just makes it easier to make shit games. the core issue is that theres no quality control, no barrier of entry
>>105923173It's nothing like opengl. It's a rendering engine with its own pipeline. I wish there was opengl 4.6 on top of vulkan (similar to angle)
>>105923394Soon like next year whenever Blow releases his Sokoban game. He did a presentation a few days ago too.
https://www.youtube.com/watch?v=IdpD5QIVOKQ
>>105923394Two more weeks.
>>105923394why waste time on a language that ai doesn't understand and has worse performance than time tested c++.
anyone here actually use grok 4 heavy>?
>>105924018>ai doesn't understandAI only needs to understand the language when
>the syntax is such a pain in the ass that you want it to write it for you>you're "vibecoding"I can absolutely understand the first one with C++, because I work with it and it makes me want to blow my brains out. Which is why I want Jai.
>has worse performance than time tested c++.Have you actually used C++? Nobody should need to ask why someone wants to move away from C++ if possible.
P.S. Claude 4 understands Jai, at least to some degree, it can output mostly fine syntax (all I've seen was perfectly fine, but my sample size was tiny).
>grok 4 heavyWorse than all the other top models (Claude, Gemini, DeepSeek) for programming. Though supposedly xAI is working on an LLM meant for coding and Grok isn't, so we'll see.
>>105924062I get grok to write all the c++ code, aslong as i understand the general flow i don't need to know the specific syntax.
c++ is still the fastest compared to everything else like c# or java
>>105923076If you're only in it for the money then you were never gonna make it anyway.
Besides, even in that case, having a completed game will certainly look good on one's resume
>>105924114It's the fastest, but it's also an extremely flawed language with horrid syntax for a lot of things. I'd gladly trade 5-10% speed for much nicer syntax and proper metaprogramming. Right now however you don't have much of a choice, you either use C++ or I guess you can get your balls stomped on by the Rust borrow checker gestapo. I guess Odin is an alternative.
>c# or javaNo shit, but nobody is seriously talking about those as a C++ alternative, they are obviously very different languages (unless you're fine with taking relatively massive performance hits).
good progress, nerds, I am pleased
>>105923451Based poojeet
ODIN is needful
i hate defensive programming. i hate having to implement checks that assets are valid. fuck why cant we just assume people dont break their files?
>>105924114> I get grok to write all the c++ code, aslong as i understand the general flow i don't need to know the specific syntax.heh. oh boy.
>>105924596You can assume everything you want
>>105924644modders would hate you for assuming things
>>105924700nobody will play nor mod my game
>>105921756>>105922287Thanks! I'd never heard of that game before, but it is similar to what I'm going for, though looks more complex than what I have.
>>105923451I've unironically begun learning Odin. It does the needful. I have no idea who or what Jaiis though โ sorry. In any case I'm coming from Common Lisp but have done a lot of C and C++ both in the past but was not in the mood for either.
Been a pretty nice experience so far, also switched to Helix from Emacs. Great combo of "just fukken werks".
>>105924018>has worse performance than time tested c++.worse how?
C++ is shit when it comes to compilation time. Including a C++ std lib and the compilation time makes you wait for a few seconds, even for a 2-liner "hello world" code. Jai on the other hand compile an entire game within that time and that is not even incremental but a complete compilation.
Both Jai and C++ are LLVM's frontend, Jai having a more simpler and straight forward syntax and features makes it easier for LLVM to implement optimization passes more efficiently than it ever could on C++ code. Jai doesn't have to "come out" for everyone to figure out that Jai is faster than C++. You clearly haven't spent any serious time with C++, stop assuming about its performance.
>>105924590>ODIN is needfulyes, saar. Can't say the same about you though.
>>105925281Odin is the C++ flavor of C where the quality of life features are provided with a pinch of Pascal instead of the retarded OOP bs.
You might also find C3(considering both share similar philosophies but different approach) to be of your liking so do consider giving it a try if you feel like Odin isn't for you in the long run.
>switched to Helix from Emacsskill issue
but hey, if it werks, it werks.
>>105923451odin doesn't have methods writing class_func_name sucks after a while. I wish the author went further with his go clone and copied the interface system. c3 has it at least.
>>105925479>odin doesn't have methods writing class_func_name sucks after a whileinsane how anyone can make a modern language like this
>>105915930I know they also improved text rendering, so I've been thinking of switching after my current project. I also wanted to try out raylib however.
>>105915930SDL3 is too complicated for me. I just use opengl with odin saar
>>105925479>odin doesn't have methodsYes and nothing's stopping you from using function pointers as methods with one additional line, like in C.
In terms of language design, its less cluttered when there is no v-table with syntax sugar that handles that above one additional line for you implicitly.
>>105925500>insane how anyone can make a modern language like thisWhile languages like C++ and Rust give more and more, languages like Odin, Jai and C3 give less and less, to the point where they have nothing fancy about their language to market about.
Its not insane. That is how you maintain sanity when seriously programming for the modern hardware.
Modern x86, ARM hardware and GPGPU graphics APIs are complex enough. Having retarded Programming Language complexity on top of that actually makes one loose sanity in no time.
>>105919609https://www.youtube.com/watch?v=0IJMXW0_dcU
Simply make game
>>105925620Yes it is insane to remove basic features from a language that don't confuse anyone
>>105925688>Yes it is insane to remove basic features from a language that don't confuse anyoneit is not basic though.
If it really were a basic feature, C would have had it too. Stop crying over pointless things.
Languages like C++ and Java already obfuscated Alan Kay's definition of OOP bad enough. Don't make it worse by pointing out "methods" to be a basic feature of procedural languages. Yes, its comfy to have vitrual tables but not having them is fine too.
>>105925825Yeah it is basic, easy to use, easy to implement, no real downsides, does not require vtables
>>105925840>does not require vtablesyou might want to ask your AI bot about that one more time before prattling shit like that.
oh, you got no idea, nvm them
>>105925854Methods are just functions with an implicit first parameter
>>105923451>>105924590How does Odin do with metaprogramming? Some of the stuff I'm working on right now would be 100x easier if I could generate code at compile time easily like Jai does (but Blow has stopped admitting people into beta unless you know and Blow the right people).
>>105926127>How does Odin do with metaprogramming?it doesnt
>>105926149Well I'll wait for Jai then. Since I'm working on a game, not an engine, my code is extremely static and meant to do one thing one way, meaning a lot of stuff is known at compile time. Being able to generate code at compile time would make many many things much easier than C++ is making them.
>>105926183What do you want codegen for?
>>105926196The basic underlying system I'm using is an "ECS" (quotation marks because apparently it isn't, but to me it has entities, components, and systems so it's an ECS). Archetypes, queries, observers, etc are all completely static and will never change at runtime, meaning I could generate masks and a bunch of other things at compile time. C++ on the other hand is template hell and massively overcomplicates things, the syntax is barely legible and I dread having to come back to this in 6 months.
It's not impossible in C++ far from it, it would just be a lot cleaner and easier if I could generate code.
>>105926281>ECSAnd no, I'm not making an ECS because I think I need it, I just enjoy that way to reason about things.
>>105926281Sounds like an unholy mixture of overengineering and premature optimization
A bit of dynamic dispatch is not going to cause a problem
>>105925673>Simply make gameHe clearly states that it was just one out of 70 different proposals they were working on
>>105926183you need to write your own language, Gay.
>>105926293>unholy mixture of overengineeringNot really, I tried flecs and EnTT previously and did this because those were just way too much. Effectively I just have instances of predefined sets of components that I iterate over, except instead of telling the system which sets to iterate over, I tell it to iterate over the specific component(s) and it matches that to the appropriate sets.
It would just be cleaner in Jai, but even with C++'s disgusting syntax the whole system is still about 1k lines and is unlikely to ever go above 2k.
>premature optimizationLike I said, I just enjoy this way to reason about it, it's not for performance reasons, if it were I'd just use flecs or EnTT which likely will provide better performance than anything I can reasonably develop on my own while also making a game.
>>105926450If you're thinking about shit like ECS systems for your game then you are overengineering it
Shifting dynamic dispatch to compile time code generation is an optimization, one that I'm sure isn't neccessary
>>105926450this wont work. you need to dynamically add/remove components at least. otherwise ecs will be totally useless. this is a cope mechanism to communicate between systems, because there is no other way.
>>105911856To get from not producing anything to producing something.
>>105926471>If you're thinking about shit like ECS systems for your game then you are overengineering itIt's really just a way to tell it what to iterate over, it is perhaps a bit of overengineering but your game also has to be something you enjoy working with, and as I said this is my preferred way to think about it, even if it leads to a somewhat more complex system.
As long as it doesn't go overboard.
>>105926488>you need to dynamically add/remove components at least. otherwise ecs will be totally uselesI can see the use for it don't get me wrong after all almost every ECS does it for a reason, but I don't see how it's mandatory. I know what all my archetypes should look like at compile time, if one might need a component I just throw it in there, most components are tiny enough that it won't really matter if a few entities (in the low hundreds) have an unused component.
>>105926281You could try taking a look at Zig. comptime seems like exactly what you're looking for.
>>105911078 (OP)Best engine to develop a Final Fantasy Tactics clone with? Going for full 3D, like Jeanne D'Arc (PSP).
>>105926680Either make your own, or, if you can't make your own, use Unity.
That's my rule of thumb
>>105911597Every time I've posted here before, almost everything I've received is pointless trolling and baiting. So why should I post anything here at all?
This garbage general is filled with people only looking to argue and shit on you, much like the rest of this board. Heaven forbid you actually make something genuinely cool, you'll just get harassed to no end. It's just a crab bucket now.
We're in the dark forest age of the internet. Everyone is in their closed D*scord rooms with their dozen friends, trying to keep as low of a profile as is possible.
>>105926549You've already gone overboard, you're thinking about switching languages to support some complicated system that doens't need to exist
>>105926773>Every time I've posted here before, almost everything I've received is pointless trolling and baitingThere is only one troll in here and you shouldn't let him sour your opinion of the thread
>>105926773Still better than agdg
>>105925860if that is your definition of methods then you should have no problem with methods in Odin because Odin has "->" operator for exactly this purpose. Stop crying over pointless shit like a retard already.
https://odin-lang.org/docs/overview/#--operator-selector-call-expressions
>>105926127>>105926281>How does Odin do with metaprogramming?it doesn't do meta programming like Jai does(generics) but you can use Parametric polymorphism to generate code. It does not generate types at runtime but it does generate different variants of code for you at compile time. For your use case, I think parapoly will get the job done.
Here is a simple example on how Odin's linear algebra library generates math function for different types at compile time, depending on what type gets called
https://github.com/odin-lang/Odin/blob/master/core/math/linalg/general.odin
and for a more complex example
https://github.com/odin-lang/Odin/blob/master/core/sync/chan/chan.odin
You can also generate structs with variations at compile time and that should be enough for your use case, I think. Be careful though, it can bloat the LLVM IR and performance can take a hit. For generating struct types, you don't have to worry but if a proc does have lots of instruction, the optimization passes will find it hard to optimize the instruction. So keep the procs small when using parapoly if performance is your concern.
>>105926743I don't want to support zog, does that mean I go Unreal?
>>105926841>Odin has "->" operator for exactly this purposeAll that does it modify the calling convention, there's no implicit first parameter or selecting the function based on the type
>>105926773this is absolutely true, from what I remember.
but as a piece of shit myself, I will not comment.
It is still true though.
>>105926790>There is only one troll in herebad joke. Didn't raugh.
>>105926882The calling convention does have an implicit first parameter which can be skipped as an argument.
You are not even reading and making everything seem pointless so that you can cry even more. Just get it over with lmao
>selecting the function based on the typeyou didn't mention that as your "method" definition and you will need a vtable for that but you already said its not necessary so you need to get your shit together first. What a troll. Lets see what bs you'll come up with and how far you'll go.
>>105926926In the function body itself the first parameter is implicit, often called this/self
You don't need a vtable to select a function based on the type unless you're using inheritance
>>105926773>We're in the dark forest age of the internet. Everyone is in their closed D*scord roomsMost people here are worthless, I ask AI for help if I need it because at least I'll get a response.
>>105926974Why do you expect other human beings to answer your basic programming questions when AI can do it for you
>>105926952zionist occupied government
>>105926842you're just replacing jews with chinks by using unreal. use godot if you want real freedom; that is if you actually care about your principles.
>>105926974NTA but here's a big problem: People these days are too dependent on AI.
I've been addicted to asking AI chatbots for help and realized it drained my skills in everything. No joke.
>>105926988>use godotNTA but no thanks. It's pozzed (same as being zogged)
>>105926983You're just proving how worthless you are. Who said it was basic programming questions I was asking? Oh right you did to discredit how worthless you were.
>>105927000If AI can answer it, it's a basic programming question
>>105926999Then use redot, personally I don't think using an MIT licensed engine is pozzed. You don't have to credit them, take their source code and change it, nobody can stop you. Hell rename the engine to "fuck godot". You're just upset some stupid tranny community manager on xitter said they were woke.
>>105927029I wouldn't use godot's codebase at all, it sucks and their editor gui is crap
>>105927009Thanks for the insightful help, I appreciate the heavy assumption and discrediting you do. Your work here is clearly valuable. Totally not proving my point.
>>105927040I'm not trying to help you
>>105927037Then use SDL3 and make your own shit or you can use Unreal 5 and have your game run like crap on nearly everything.
For me it's irrlicht
>zlib license, so no GPL nonsense or MIT nonsense
>no editor, so no unresponsive ui to worry about
>no one works on it, so no one to cause any controversy
>>105927059>MIT nonsenseits literally the same as zlib
>>105927055>Then use SDL3Not using SDL3. I'm using SDL2+OpenGL3.
Also imagine thinking Unreal is the only option left lmao
>>105927074>Also imagine thinking Unreal is the only option left lmaoI wasn't, he said that's what he was potentially thinking about using.
>>105926974>>105927000If AI can answer it, it's basic programming questions.
I've been doing a lot of SIMD programming, and I've noticed AI is completely useless in answering anything at all about it. It looks like it gives you something, but it's just gibberish every single time.
I wish I found some community or a friend who possesses the kind of advanced low level knowledge I am looking for.
>>105926989AI is brilliant as a search engine, and that's how I exclusively use it myself. I don't make it ever do my work, unless I was going to slopcode anyway by copying some stackoverflow answer to quickly cobble together something I didn't really care about, something we've been doing anyway since the dawn of stackoverflow.
Actually now that I think about it, why not just edit irrlicht or some other FOSS game engine to make it into your own personal engine with your own additions, like how Source is based on the Quake Engine?
>>105927112>If AI can answer it, it's basic programming questions.Why do you ASSUME they're programming questions? This is all you know how to do, assume and discredit. That's what the majority of you people here do. Even if they WERE programming questions nobody said they were ANSWERED correctly by AI; they said they got a RESPONSE. I wish you could parse the English language a little better and stop being such a fucking midwit.
>>105927139Irrlicht sucks ass and it would be better to make your own engine
>>105927141>Why do you ASSUME they're programming questions?Because we're in a programming thread talking about programming? What kind of retarded shit am I reading?
>>105927154I didn't realize game development was exclusively about programming. That's news to me!
Post old progress posts (made by other anons) you've saved
I'll start, I really liked this one
>>105927160What else could you ask it? How do I draw a texture? How do I design a game? lol
>>105927187>continues to prove my pointThanks, midwit.
>>105927191What questions do you ask an AI about game development that aren't about programming?
>game and engine development thread
>look inside
>there's no game or engine development being made
>just retards arguing
>>105927217Yeah I'm seriously thinking about ditching this place and going somewhere else, the few progress posters left
>>105927141The implication is that you find the answers of AI in some way helpful, if you keep asking it. May not be what you meant, but it's how it reads to us. Deal with it.
Also you might have the wrong expectations about these threads, no expertise is to be found here. It's very rare anyone genuinely competent in some extreme niche (eg SIMD programming) happens to lurk this thread when you throw your question in here, especially if you do it without some attention-catching image.
>>105927229>no expertise is to be found hereI an literally an expert game developer but nobody asks any interesting or relevant questions anymore, it's just retarded shit flinging
>>105927225Problem is, what else is there? /agdg/ sucks, so that's not an option
>>105927235>I an literally an expert game developerok pirate software
>it's just retarded shit flingingyup
>>105927238>Problem is, what else is there?That's the question isn't it
>>105927244I sold my first game in 2006 and I've done everything from game design to art to engine programming
>>105927235>it's just retarded shit flingingnta but you yourself are also engaging in said shitflinging.
pls stop
>>105927263Then the thread would just be dead
>>105927277What, you *want* shitflinging?
A dead thread is better than a flame war
>>105927262>I sold my first game in 2006 and I've done everything from game design to art to engine programmingMy bad Johnathon Blow. I didn't mean it.
>>105927289Jon Blow isn't an artist
>>105927291I disagree. I witnessed his art.
>>105927306Maybe his online presence could be considered performance art
>>105927235Okay answer me this, I had this to solve recently. Is there are an efficient reverse of _mm_movemask_ps()? Something that expands a 4-bit mask to SIMD regists with as few cycles as is possible.
You probably can't answer it because you're not an expert in this particular niche. AI can't answer this properly either.
>>105927320That's hardly a game development question, if you were game developer I'd tell you to stop larping as a HPC guy because it doesn't matter
Not any anon but I made a meme
>>105927349The two people arguing actually make games, though.
>>105927363https://store.steampowered.com/curator/39750107-Games-Made-With-Unity/
https://store.steampowered.com/curator/41324400-Is-it-made-with-Godot/
Checkmate, athiest.
>>105927381>see "games made with [off the shelf engine]" lists>look inside>the games are slop
>>105927397>the games are slopI never said they were GOOD.
>>105927397I think if you were to take every game engine ever and sum up all the good games with it, Unity would come out on top by a mile
>>105927405Well I don't want to make bad games.
>>105927408At this rate, you're making NO games. :DD
>>105927408An engine doesn't determine how good the game is
>>105927415Never implied it did.
But it can possibly put a dent on the game's quality if the engine is crap (i.e the engine is named RPG maker or godot) or is misused (i.e the devs are lazy and just use default shit instead of being creative with the tools they're given).
>>105927347This was part of a software occlusion culler, very relevant to game *engine* programming.
Btw the best solution I came up to it was this, quite simple actually but it wasn't instantly obvious to me.
i256 unmovemask() {
uint32_t arr[8];
for (uint32_t i = 0; i < LENGHT(arr); i++)
arr[i] = 1 << i;
return _mm256_load_si256((i256*)arr)
}
int main() {
const i256 comp = unmovemask();
uint32_t bits = 0b11001010;
i256 mask;
mask = _mm256_set1_epi32(bits);
mask = _mm256_and_si256(mask, comp);
mask = _mm256_compeq_epi32(mask, comp);
}
>>105927436Godot's ok for 2D games
Unity is ok for most things an indie can put out
>>105927449Do you really need a software occlusion culler with cutting edge performance?
>>105927454Godot is just fine with 3D nowadays. It's not as good as Unity granted but it's not exactly super far off or anything.
>>105927464>Godot is just fine with 3D nowadaysDisagree until I see people make non-shit 3D games with it
https://www.youtube.com/watch?v=J06tluN7rtE
>>105927477There's this game
https://godotengine.org/showcase/planetenverteidigungskanonenkommandant/
It's not out yet, though and might be terrible so I guess yeah there's really not any proof yet. I do think it's capable, though the only people who use godot seem more interested in making 3D PSX slop or 2d games.
>>105927509A game engine is only capable until it's battle tested, and a one-room game is a very small battle
>>105927462I do, I don't want to make 20fps unity slop. And the better my engine performs the better I can realize my dreams.
But my drive to do stuff like this is more about becoming a better programmer and just genuine interest at this art of low level performance programming. I've never really been money motivated.
I honestly find it very odd that just cool programming isn't respected here anymore.
>>105927507>every font is free if you're willing to recreate itYeah I mean, I suppose
>>105927533>A game engine is only capable until it's battle testedI slightly disagree, a game engine is only proven capable after being battle tested. I still think it's very capable I just can't really prove that to you, yet. I give it a couple more years and I think you'll change your mind.
>>105927547Who says people don't respect cool programming?
I respect people who can scope their projects more though as you probably don't need to use advanced SIMD to squeeze out all possible performance, you're just getting stuck in a mental rabbit hole
>>105927551As soon as anything speculative is put into production people will find a million bugs and performance issues that need to be worked over
>>105927320>>105927449the parallel bit deposit intrinsics
>>105927556You don't know what I am doing or by what I am motivated by.
This particular project isn't ever going to become a game, it's a proof of concept software renderer.
>>105927591Those don't exist for SIMD registers afaik.
To visualize, the problem was to expand
0b1011
into
ffffffff, 00000000, ffffffff, ffffffff
without a scalar loop with ternaries like usual.
AVX512 seems to actually have _mm_mask_set1_epi32 which does this, though it's still 3 cycle latency (same as mine) and .. well it requires AVX512. So it's a no-go.
>>105927674>This particular project isn't ever going to become a game, it's a proof of concept software renderer.That's why I prefaced this discussion with "if you're a game developer"
>>105927683Eventually I will use this technology in a game. I wouldn't be working on it otherwise.
>>105927698You just said it wasn't going to become a game
>>105927701>This particular projectThis exact project folder? No. But the technology and techniques will.
>>105927705In that case you're totally wasting your time working on a software renderer
>>105927674you can just unroll the loop a bit. the compiler should do that for you
>>105927709Man this is exactly the kind of argument I get into every time I join this thread. This hustle culture is fucking cancer. To go /biz/ or something, this is supposed to be /g/, A TECHNOLOGY BOARD.
>>105927752Masturbatory programming that doesn't achieve any results or solve any problems is even more meaningless than the hustle culture that puts results over everything else
>>105926988Godot kinda sucks, no one has made a non-crap game in it.
Hey guys I'm working on a multi platform UI toolkit. It could possibly be implemented in a game in the next decade, possibly maybe. The game and game engine development thread is the right place to post, right? I use rust, btw.
>>105927773I liked Cruelty Squad and Buckshot Roulette. You'll say they're bad but you're wrong.
>>105927750I mean, my solution
>>105927449 basically does that, where I've unrolled the loop directly to SIMD registers. It just needs a constant "unmovemask" to do the cmpeq against.
>>105927764>occlusion culling doesn't solve a problemalright
You are why I wont post in this general ever again.
>>105927826Maybe you're solving a problem, it's just not a real one
>>105927826im not sure i understand, why wouldnt pdep followed by a set1 of uint_max get you the mask you want?
>>105927882set1 broadcasts 1 scalar value to all lanes of the simd register
>>105926934I don't know how to expect the compiler to achieve that without using vtables. Using something like generics can be a valid workaround without relying on vtables but if not, you do need them.
Instead of bland suggestions on how a language can implement a feature, refer to an already well implement examples and cite them, if you can claim your statements to be true to any extent.
>>105919609get a real engine first.
do you think all memedot games are pixel art or retro ps1 style because the devs want?
>>105927922>do you think all memedot games are pixel art or retro ps1 style because the devs want?Literally, yes. Unity has just as much PS1 style slop. I don't know if you've noticed this but that's been a pretty big trend right now in the indie world.
>>105927674>0b1011>into>ffffffff, 00000000, ffffffff, ffffffff...can that just be a multiplication? ...Probably not. Feels to me like there should be a trick-of-that-nature. Like maybe https://graphics.stanford.edu/~seander/bithacks.html#InterleaveTableObvious . Basically you're interveaving with itself n times, yeah? It doesn't use SIMD but maybe you can adapt something.
Also maybe check what the compiler generates, maybe it already knows the answer.
>>105927895Wait can't you just broadcast with a mask? Sorry I don't know simd particularly and am not going to do code/reading comprehension.
>>105927752ARGH! IT'S THE SOFTWARE RASTERIZATION TARD EVASIVE MANEUVERS, EVASIVE MANEUVERS!
>>105927782Welcome. Perhaps a screenshot?
>>105927972>...can that just be a multiplication? ...Probably not.The standard scalar loop solution basically is, you just loop the bits and ternary/multiply with UINT32_MAX if the bit is set.
But you need to do that 4-8 times, with a handful cycles for each loop. I was looking for a solution that did all this in couple cycles at most. My solution does achieve that, if we don't count the one-time set up of the "comp" mask.
>Wait can't you just broadcast with a maskThat's an AVX512 feature, and AVX512 obviously isn't something I can target.
>>105928061what about this implementation, but just using avx2?
https://richardlupton.com/posts/invert-movemask/
>>105927909vtables are only required for dynamic dispatch, if there's no dynamic dispatch you can determine the method that needs to be called based on the type at compile time
ultimately it's his choice how he makes his programming language but if just plain structs and functions were enough for anyone why bother switching off C in the first place
>>105927953godotranies started that because their patreon-scam engine can't handle good looking graphics.
unity and unreal can have more too, but they also have millions of games with good graphics, while bugdot don't have a single game with good stylized art.
>>105918733That guy is cool and motivates but I then imagine about the gap between drawing a rectangle in Raylib and building Terraria and then I give up
>>105928144Building a Terraria-like game is actually pretty easy
>>105928074His solution is fundamentally the same as mine, using "and" with "cmpeq" to generate the final result, but his is more complicated (and slower) because it needs to do some shuffling to work with 8-bit lanes, while I was only concerned with 32-bit ones.
But that's cool that you found someone doing the same thing I did, sort of.
>>105928101literally a skill issue. the engine can handle good graphics just fine. you unitytards are the biggest faggots of them all. By the way, Sonic Colors used godot.
>>105928207then use the 32 wide equivalent of his?
>>105928101>>105928233>more unity vs godot shitflingingkek
>>105927349 is proven right
>>105928271>>>105927349 is proven rightThe SDL guys make no games, though so of course they're happy.
>>105928153>>105928153Huh, really? Why am I so fucking lazy
>>105928144Do it. You will learn a lot. You can quit whenever you want to so there's no reason for not starting.
>>105928489The only difficult part is the multiplayer component, platform games are one of the easiest genres to program
My codegen'd c++ to lua tool is pretty comfy. It automatically creates bindings for all my classes and also has intellisense typing too
Guys, I just had an idea
What if I took an old public domain IP and made a game out of it
>>105928939the invisible man in the invisible world and its just a blank window when you open the game
>>105928939>a game about learning to hunt whales and where nothing happens
>>105928144Ironically, Ray already has a platformer project you can take and use with raylib. A sprite isnโt so far from drawing a rectangle.
Has anyone tried working with WebGPU? How does it compare to Vulkan and DX?
>>105929963>a futuristic adaptation of moby-dick, but after months on sea you realize that there are no more whales and the white whale that hurt you died to microplastics ages ago. The real killer was pollution all along.>15 awards at some weird arthouse indie game congress noone ever heard of
>>105930654That's unrealistic. The chinese hunted them to extinction. Now that's real life.
>>105928939>tom sawyer game adaptation>treasure island game adaptationi'd be down
Where should I go to learn shader transforms? Trying to retrofit a cool background shader so that it rotates + translates via player/camera movement
>>105930680>race the chinese to the white whale
>>105928939>tom sawyer in a plane back from vacation
>>105930747Simple vertex shader stuff.
Anyone here make fangames?
Considering making a moddable (as in, people can mod the game (and probably thus make lewd mods ofc)) Pokemon fangame in Unity (anonymously, so Nintendo can't sue me. They can't C&D me if they don't know who I am)
>>105931609It's unlikely you can hide your personal identity completely and even if they do they can get it taken down from anywhere that hosts it online
Dumb idea
>>105928085>determine the method that needs to be called based on the type at compile timethen you'll need to rely on something like generics if you do not wish to rely on vtable for getting the job done, which again is usually requires an additional line of work. Stop ignoring your own words and get your shit together lmao
>why bother switching off C in the first placeI'm not the one having issues with a procedural language not having methods in it.
You completely forgot what you were crying about in the first and settled on another dumb reason to pointlessly cry about. Befitting a troll.
>>105931881Generics have nothing to do with methods, I don't know what you're getting at
>>105931609I remember a leak that Nintendo had a private investigator find a Switch homebrew dev one time
>>105931934Yeah they do shit like that, I had some guy posing as a fan come into my IRC channel to try and catch me for something similar, it was a funny and bizzare experience
>>105931890lmao.
you don't even know what (You) are getting at in the first place so stop thinking that its me.
>>105932587A method that is bound to a type can be resolved at compile time so long as the type is known at compile time
>>105932612yeah, cry more that Odin isn't doing things the way you are suggesting lmao
Do you even know of any programming language that exists, is well adapted and does things the way you suggest?
>>105928286>The SDL guys make no gamestrue.
games and game engines make use of SDL guy instead. Unreal engine uses SDL2 for USD and audio in Linux. You can check in their source code
>>105928939just don't make it obvious and you might be able to make it.
>>105930497I did not seriously try it yet but I liked their shader language.
From my experience, apart from WGSL shader language being convenient, resembling hlsl for the web and saner than glsl, I don't have much to share.
stop overthinking game architecture. just use virtual void update(); etc to update game objects.
Thoughts on wgpu? I have seen some engines use it. Is it really that good?
transform matrices are arcane magic
>>105935661The real arcane magic is monitors being able to transform pure visuals into pixels to be displayed on a screen in a way that mimics the original near perfectly.
>>105935691>he thinks it is monitors that take geometry and turn it into pixels
thinking about doing something similar to godot with game objects in a Tree...
should i have my game objects as a tree in memory or as multiple a arrays, each representing a tree depth ?
also, raylib ignores the tree in a GLTF file and just import an array of meshes, so i'm gonna have to re-implement the gltf importer =*(
>>105935799>ECS pfft I don't need the crap>I'll just come up with my own approach that makes sense to me>*accidently reinvents ECS*
>>105935779yeah, just like how it's my keyboard that randomly prints out NIGGER NIGGER NIGGER sometimes NIGGER
>>105935799godot trees arenโt literal tree structures
theyโre just displayed like that
>>105932674I'm pretty sure most compilers optimize method calls like that
trying to find the optimal godot dock positions got me thinking about getting a monitor for my laptop. specifically, an ultra wide monitor. if i save up for 3 months I can buy a Dell UltraSharp U4025QW. should I?
>>105931890>>105931881look up generic_select or whatever it is.
it is a special macro that instructs the compiler to call a different function based on the type of the arguments.
it is a Cnn where nn is some year after 89, i for get which, c11, c19, some shit like that. c23?
>>105931890>>105931934>>105936052this one https://en.cppreference.com/w/c/language/generic.html
>>105935661matrices are more intuitive if you write matrix operations like this
struct mat4 {
//xyz axes, store rotation and scale (as vector magnitude)
vec4 x;
vec4 y;
vec4 z;
//translation vector
vec4 w;
}
vec4 TransformVector(mat4 matrix, vec4 vector) {
return vec4(matrix.x * vector.x + matrix.y * vector.y + matrix.z * vector.z + matrix.w * vector.w);
}
mat4 TansformMatrix(mat4 parent, mat4 child) {
mat4 result;
result.x = TransformVector(parent, child.x);
result.y = TransformVector(parent, child.y);
result.z = TransformVector(parent, child.z);
result.w = TransformVector(parent, child.w);
return result;
}
>>105936310i saw that in directx math library. much easier to understand that standard matrix multiplication algorithm.
>>105936359why do you need to understand it?
>>105936310ironically calling one representation more intuitive than the other is a demonstration of your own lack of intuitive understanding
You guys aren't nodevs like Threat, are you?
this video made me remember why I'm writing my engine. No off the shelf engine can compare to this experience.
https://youtu.be/8eYR9-BupOU
>>105937225This retard would be a YanDev/PirateSoftware tier lolcow, but he's too autistic and repugnant to get enough of a following for that.
>>105911742what the fuck is with all this 'use case for' shit? I leave /g/ for a fucking month and come back to everything being asked this, is everyone retarded now? is it one guy being a moron? or did someone say something profoundly stupid a month ago and now everyone's mocking him for it?
>>105937655use case for leaving /g/ for a month?
>>105937655It's some retarded /g/ FOSS nodev tinkertranny meme, ignore it
>>105937640I saw one video of his and honestly it was fairly well made and well argued. I thought he was just trying to motivate people to optimize their shit but then I discovered that he's just grifting to develop his "game" lmao. He said he won't develop his game until his considers the Unreal Engine good enough for him. That's some top tier quality right there. I think he has big lolcow potential in the future.
file
md5: b83b7cb2518538601d0d791eba446511
๐
>>105911078 (OP)raycaster anon here, I've posted a few times, my fucking hard drive failed where I had my dev and local repo so now ive got to dig through the recovered files to put my engine back together from scratch
picrel test image of 64 rotating sprites running on my engine
>>105937707bro, github is free. it's literally free
>>105937721bro you sound like my roommate rn
>hurr don't do stupid shit>smart shit is done for a reason>oh no the consequences of my own actionsI get it I should stop doing stupid shit guh
>>105937737well if you backed up your code to something external or off-site you wouldn't have lost your code. just sayin' little nigga
>>105937751the drive that failed was my backup, it happened while I was wiping my old computer and setting up a new one ;-;
from now one I'm gonna have 1 internal backup, 1 external backup, 1 optical backup, 1 offsite backup, 1 dropbox backup, 1 gitup backup, 1 backup mailed to my sister and buried in a secret location
>>105937707Same, I lost a lot of stuff but managed to put most of the source code back together, in one case I recovered an entire project just from vs code cache files. Still, all notes and original assets are gone until I send the drive for recovery attempt.
Seagate?
>>105937225he sometimes says something thats right. though it is nice to see how aaa game frame captures, once you ignore the nodev
>>105938240western digital actually
right now I've got a thousand copies of different files from my build, header, cpp, makefiles, all mixed together with no build date or hint about what they are but a number for a filename
so I've gotta go through them all to find the most recent version of each file, kill me
>>105938383So you got the files recovered without the directory structure?
I'm going to fucking kill myself if I have to dumpster dive through all the node_modules files mixed into one.
>>105938702yes
I've managed to sort them for the most part, different file types were automatically detected at recovery and I've been using key string searches for things I know I wrote into it
still a shitload of files to dig through
>>105915872so, they're both working for the big banking cartels to bring about world domination through terror and fear in the ultimate problem-reaction-solution scheme of the millennium?
>>105915872What's ChatGPT? FDR (with his terminal illness)?
Why is it called enginedev when you're really just making a game, not making the next Unity or Unreal.
>>105942947Engine doesn't mean Unity or Unreal
>>105927752You do know that such dishonesty is intentionally done so to keep actual discussion from happening?
Anyways, do you have any screenshots of your renderer in action?
>>105943307new thread, discuss how you are using ai in your workflow.
>>105927262release jai already bro
>>105927547>my dreams. >my dreams. >my dreams.
>>105937655Itโs been a meme on /g/ for at least a few months now lurk moar I guess
>>105935928I think that might be due to a NIGGER virus.