/gedg/ - Game and Engine Development General #242
Frosch !!QxG8tdNNBUC 01/21/25(Tue)09:43:45 | 264 comments | 53 images
1737408448441930
"An average day" 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
Render bugs: https://renderdoc.org/
Previous: >>103965424

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.
Anonymous 01/21/25(Tue)09:50:19 No.103980325
>>103980272
>>103980272
So I have been thinking about the phenomenon of putting your life on something. People like Eric, Jonathan blow, etc came up with something and actually put their life on the line. They were literally on the edge of bankruptcy. Is this the reason, why I fear the future? Because I never got serious about anything in my life? Treating gamedev as an outlet, without actually taking it seriously?

Never believing in myself, and throwing everything at it?
Anonymous 01/21/25(Tue)09:52:06 No.103980344
>>103980277
What would be the better way to do the one on the top? Dynamic dispatch?
Anonymous 01/21/25(Tue)09:53:02 No.103980354
>>103980325
If you need to ask then you aren't one of those people
Anonymous 01/21/25(Tue)09:54:11 No.103980365
first
Anonymous 01/21/25(Tue)09:54:45 No.103980370
images
>>103980325
Believe in yourself, and you will find out.
Anonymous 01/21/25(Tue)09:57:08 No.103980396
sixth
Anonymous 01/21/25(Tue)10:00:07 No.103980418
grafx2
GrafX2 ... home.
Anonymous 01/21/25(Tue)10:08:29 No.103980489
>>103980325
You look at the wrong picture. It's all here, right now. It will always be the present. So live in it.
Frosch !!QxG8tdNNBUC 01/21/25(Tue)10:09:48 No.103980501
2025-01-21_09:04:47
>>103980344
Are you referring to my petty and autistic comment about modulo?

By the way if you swap != with == and get rid of ~ the compiler makes them exactly the same.

But once again compilers are smart. Here is the assembly you get for both functions with an O3 flag
mov eax, edi
not eax
and eax, 1
ret
Frosch !!QxG8tdNNBUC 01/21/25(Tue)10:12:53 No.103980522
2025-01-21_09:11:36
>>103980501
And here is the O3 version.
Anonymous 01/21/25(Tue)10:22:06 No.103980615
>>103980501
No I was referring to the image
Anonymous 01/21/25(Tue)10:23:09 No.103980625
file
almost to the point where i can render text, the problem is that i need to rewrite my whole rendering api for like the 4th time to support it
Frosch !!QxG8tdNNBUC 01/21/25(Tue)10:24:10 No.103980634
2025-01-21_09:20:57
>>103980522
I just noticed that it optimized out the functions. Makes sense since I'm supplying a constant. That's why you just have
mov esi, 1

instead of a function call.

Here is a better picture. Lines 9 and 10 disassemble the same.

TLDR I was just making a lame joke in my original post.

>>103980615
O-Oh ...
Anonymous 01/21/25(Tue)10:29:03 No.103980680
>>103980625
wtf are your rendering primitives? A simple bitmap blitter is enough to render text. If you are actually parsing a ttf file, and actually rendering codepoints, then you'll need a rasterizer. You could use triangles, or you can calculate a bounding box, iterate over every pixel inside it, only filling those that lies inside the letter.
Anonymous 01/21/25(Tue)10:33:06 No.103980722
Anonymous 01/21/25(Tue)10:33:31 No.103980727
>>103980680
im gonna do something like on this site https://learnopengl.com/In-Practice/Text-Rendering
i just made my own atlas instead of having a single texture for each character
Anonymous 01/21/25(Tue)10:36:05 No.103980744
>>103980634
heres a hit for comparing asm on godbolt to make it a little more like in the real world. mark your int as extern
Anonymous 01/21/25(Tue)10:47:55 No.103980880
>/g/ tells me OOP is POO in LOO
>code everything up with procedural paradigm
>pages and pages of do_thing_with_struct(struct *s)
how is this better
Anonymous 01/21/25(Tue)10:49:39 No.103980904
>>103980880
Anon, Usain Bolt can tell you how you are supposed to use your feet while running. But you won't become Usain Bolt, unless you become fluent in that technique.

Similary, just because you know procedural doesn't mean you'll get good at it without actually writing code in it.
Anonymous 01/21/25(Tue)10:54:44 No.103980971
>>103980880
OOP in the sense that you group data and functionality is good, polymorphism and the like is bad
Anonymous 01/21/25(Tue)10:56:42 No.103981001
>>103980880
Is not, and that's what you get for trusting r/ProgrammingHumor
Anonymous 01/21/25(Tue)10:58:54 No.103981029
1719203258624478
>>103980880
Just use _Generic
Anonymous 01/21/25(Tue)10:59:41 No.103981037
>>103980880
UP is indeed crap, but not because Indians like it. It's bad because it makes the programmer who wrote it replacable with new H1B employee.
If you're not building robust enterprise software, procedural and functional are better and less verbose, as well as faster to develop.
If you do however wage slave, you have the responsibility to do what you're being paid for, in what tools and rules you're provided with.
--
For my personal projects I always go full procedural, having only few functions, avoiding verbosity and scalability issues.
Anonymous 01/21/25(Tue)11:02:54 No.103981065
>>103980880
When you call do_thing_with_struct you're guaranteed to be calling that function, not some polymorphed virtual function that some users decided to override. Doing the latter is difficult to debug. If all OOP was is a struct with methods that you'd only sometimes use, it'd be better, but OOP taken to SOLID levels is retarded and not how computers work
Anonymous 01/21/25(Tue)11:07:50 No.103981111
>>103980880
By OOP is bad we just mean that you should avoid inheritance, not whatever you're doing it
Frosch !!QxG8tdNNBUC 01/21/25(Tue)11:11:51 No.103981150
>>103980880
>>103980971
>>103981065
>>103981111
Ate in'eri'nance
Ate polly morph
Love me struck
Simple as
Anonymous 01/21/25(Tue)11:12:08 No.103981152
>>103980880
Dude you triggered so many replies, good work.
Anonymous 01/21/25(Tue)11:12:53 No.103981159
>>103980880
s.do_thing and do_thing(s) are the same, the difference there doesn't matter
It's better because you can do do_thing_with_many_structs(struct *s, uint64_t count)
and operate on many pieces of data at once, or do
third_struct do_complicated_thing(struct*s,different_struct *d)
Anonymous 01/21/25(Tue)11:16:21 No.103981186
Whenever I ask to post your game, you go silent, but you sure have opinions on what makes good or bad code.
Anonymous 01/21/25(Tue)11:17:43 No.103981195
Frosch !!QxG8tdNNBUC 01/21/25(Tue)11:17:59 No.103981200
1659667620174
>>103981186
Who you talkin to little buddy?
Anonymous 01/21/25(Tue)11:19:21 No.103981219
I want to make an FF7 clone. The only thing I would find as the main difficulty barrier would be modelling all the background field assets.

What tools exist to streamline this process?
Anonymous 01/21/25(Tue)11:21:21 No.103981234
>>103981219
A camera and gimp filters.
Anonymous 01/21/25(Tue)11:21:44 No.103981239
1737476168
>Start work on making my "from-scratch" (aka custom engine) game
>Get a basic event loop and GL4 renderer going
>Also get a palette lighting system going like SA1 does
>Also make a custom model format (not animated yet)
>Also do gamepad controls, etc
>Everything seems good so far
>But I suddenly have second thoughts
>"I don't think I'm rotating the quaternions correctly."
>"Animating is gonna be a PITA"
>"I think my code is already a spaghetti mess"
>"It might only work on Windows"
>"This is too barebones"
>etc etc
>Now I suddenly have this creeping thought in the back of my mind: "Should I just suck it up and use Unity?"
what do
Anonymous 01/21/25(Tue)11:23:27 No.103981252
Screenshot_2025-01-21_11-22-23
>>103981186
Yes. Also don't mind the artwork borrowed from 3DO (Ubisoft).
Anonymous 01/21/25(Tue)11:29:20 No.103981317
>>103981234
I actually like this idea a lot. Thanks
Anonymous 01/21/25(Tue)11:41:10 No.103981422
>>103980880
Here's what all the self-styled programming gurus don't want you to know.

It's all just techniques, and techniques match certain kinds of problems. There's no such thing as a wrong technique; just a wrong application of the technique.

The problem with object-oriented is that it wraps a ton of different techniques under one umbrella and insists they all need to be used together. For instance: code hiding, tying logic to data, interface polymorphism, composition, transparent composition. These are separate techniques, but OO says they all have to be wrapped up in the one concept of an object.

Code hiding is key to how you build libraries. Almost every language has code hiding, like with C's header files.

Tying logic to data is a natural way to write operations that use or modify that data. Simple as.

Interface polymorphism is a great way of defining "types" of operations without worrying about the specifics. Function pointers are basically the prototypical version of this.

Composition is standard. You always want to build your logic on top of existing logic whenever possible. Transparent composition is an ergonomic tool in certain situations, where you don't want to keep writing struct.member.Func() all the time and would rather just write struct.Func().

OO insists that code hiding and tying logic to data always have to go hand in hand, and insists that the only way to do interface polymorphism is to transparently compose on top of the original. That's where it all goes wrong. What if you just want an interface and don't want to compose on top of the existing code-hidden logic-bound data? Well, says the OO enthusiast, you're probably coding wrong.

Liberate yourself. Use a modern language that doesn't force these false dilemmas. It's what THEY (Oracle, Bjarne, Clean Code guy) don't want you to know.
Anonymous 01/21/25(Tue)11:43:29 No.103981443
Notch told everyone to write their own engine, yet nobody actually listened to him. Sad.
Anonymous 01/21/25(Tue)11:47:13 No.103981471
>>103981422
I don't want to liberate myself, I want to finish my projects. And I'd rather be with THEY than (((they))).
Anonymous 01/21/25(Tue)11:48:54 No.103981486
iam
>>103981152
Thanks. I am somewhat of an expert at it myself.
Anonymous 01/21/25(Tue)11:51:28 No.103981507
>>103981486
When this thread dies, I'll make an image of it.
Anonymous 01/21/25(Tue)11:55:12 No.103981536
>>103980880
>pages
ok nodev
Anonymous 01/21/25(Tue)11:57:15 No.103981557
>>103981239
If it doesn't work, then fix it
If it works but is ugly, leave a note and try to clean it up next time you have a reason to work on that part of the code
Anonymous 01/21/25(Tue)11:58:48 No.103981578
>>103981239
>It might only work on Windows
Just don't use Windows API, what's the issue
Anonymous 01/21/25(Tue)12:08:45 No.103981702
>>103981578
> Just don't use Windows API
Anon, windows API is dogshit and deserved to be burn in hell. But it's way better than any other alternative. Don't mention stuff like SDL, even valve only use SDL for cross platform code. They have their own windows layer.

The only reason SDL is successful is because Linux api is straight up evil.
Anonymous 01/21/25(Tue)12:13:27 No.103981757
>>103981702
GObject is pretty comfy, what do you mean? I just use wayland-client.so and pulseaudio's api directly
Anonymous 01/21/25(Tue)12:48:37 No.103982129
>>103981702
What's the matter with SDL on windows?
Anonymous 01/21/25(Tue)12:51:54 No.103982163
notch
>>103981443
You can bring an horse to water but can't force it to drink.
Anonymous 01/21/25(Tue)13:07:14 No.103982302
2025-01-21 18-57-17
>>103978750
fluid can interact with the environment now, gonna make some fluid spawners, and make it so player and creatures can push the fluid. also wanna look into make it more viscous
Anonymous 01/21/25(Tue)13:15:07 No.103982371
>>103982129
There is no reason to use SDL on windows. Windows API is simply better and provides more control. It's funny that almost nobody uses SDL for cross platform support, everybody use it to avoid dealing with nightmare that is linux. Most don't even ship on linux, and just stick with windows.

Another reason
Anonymous 01/21/25(Tue)13:17:35 No.103982400
>>103982302
thats looking pretty sick
Anonymous 01/21/25(Tue)13:23:47 No.103982460
So how do I write a good renderer, a good lighting system, a good animation system, etc? Where do I learn to do that stuff? Any resources?
Anonymous 01/21/25(Tue)13:28:04 No.103982515
>>103980344
There is nothing wrong with it. Switches are efficient. It's nothing like a nest of if statements.
Anonymous 01/21/25(Tue)13:30:15 No.103982539
>>103982460
Handmade Hero
Anonymous 01/21/25(Tue)13:30:54 No.103982547
>>103980344
>What would be the better way to do the one on the top? Dynamic dispatch?
I doubt the original was written like that, otherwise, the man is a madman, but what I'd do is to develop some string format and let a function do the splitting. For example, if no messages make use of new line character, and since most programming languages these days support multiline strings, I'd just put a batch of messages into a single one and call the SplitLines function or whatever your language support.
Anonymous 01/21/25(Tue)13:33:09 No.103982575
>>103982302
That looks wonderful Anon, keep up the good work.
>>103982460
It'd be better to first write a thing that works at all, then optimize it (refactoring can take some time) to make it fast, then eventually rewrite it, so you have easier time modifying it.
You can learn a lot by just writing the code, the books either push some OOP / Clean Code agenda or become outdated. If you're happy with one subsystem, extract it to header-only library.
>>103980272
Where are Sims-Anon, GUI-Anon and Derelict-Anon? I wrote around 2k sloc of new code, and refactored around 6k of old code, but I have nothing to show, because game is same.
Anonymous 01/21/25(Tue)13:34:41 No.103982601
>>103982575 (Me)
>>103982460
Ignore post above regarding an advice to you, this guy below has a better advice than mine...
>>103982539
Anonymous 01/21/25(Tue)13:35:06 No.103982607
>>103982515
Even if it runs well, organizing code like that is just horrible
Anonymous 01/21/25(Tue)13:36:38 No.103982626
>>103982575
>write a thing that works at all
But if I have no idea how to do it, my lighting will most likely look like shit, where do I learn to make it look good?
Anonymous 01/21/25(Tue)13:37:26 No.103982638
>>103982302
Would be cool if it was related to some gameplay mechanic, and not just a neat visual effect. Like a poisonous gas or something along those lines.
Anonymous 01/21/25(Tue)13:38:17 No.103982649
1715761884654233
>>103982575
>Where are Sims-Anon
I'm currently stuck in refactoring hell and have been quite busy leaving me little time to make progress. I'll be back soon(tm) hopefully.
Anonymous 01/21/25(Tue)13:41:53 No.103982689
>>103982607
more horrible than putting all the dialogue in some other scripting language?
Anonymous 01/21/25(Tue)13:44:11 No.103982717
>>103982460
>Where do I learn to do that stuff?
certainly not here
Anonymous 01/21/25(Tue)13:45:09 No.103982730
1737484891392786
>/gedg/- 4 hours alive - 63 posts
>/adgd/- 4 hours alive - 235
>One post here for every 3.7 there
What can we learn from this?
Anonymous 01/21/25(Tue)13:48:19 No.103982758
>>103982649
Иф жoyћ пpoјeцт иc oпeн coypцe, И цaн тaкe a лooк aт ит иф Жoy дoнћт минд. Иф нoт, Ићм cтилл интepтecтeд тo cee њхaт eџaцтлж иc гoинг oн ин тхepe...
Anonymous 01/21/25(Tue)13:50:58 No.103982790
>>103982758
If you're a projector, you're a singer, and the price is just a little bit too high. If you're not, I'm a stylist, I'm an interpreter, and I'm a writer, and I'm a writer...
Anonymous 01/21/25(Tue)13:51:35 No.103982795
>>103982649
Sorry, mostly looking at the keyboard now, typed Captcha beforehand... New keyboard, most of blind-typing went away with the old one.
So... >>103982758
If your project is open source, I can take a look at it if you don't mind. I'm still interested to see what's going on in there.
If you don't want to make it open source, just send me one file from it, in any language, I'll make sense of it. Please send via 0x0 or lainsafe.
Anonymous 01/21/25(Tue)13:57:14 No.103982845
Screenshot 2025-01-21 at 1.50.36 PM
>>103982795
Sure Serb-bro, the game is GPLv3 and you can find it on github. https://github.com/Pariatech/Bidou
Anonymous 01/21/25(Tue)13:57:39 No.103982851
Screenshot_2025-01-21_13-55-23
>>103982649
I'm also refactoring, this is probably some unknown mental disorder, because I enjoy refactoring. God speed Sims-Anon.
The only things I enjoy more than refactoring are parsing, lexing, writing machine code translators (IA32e) and graphics (Vulkan/OpenGL).
> OCR-D: Obsessively Compulsive Refactoring Disorder
Anonymous 01/21/25(Tue)13:58:22 No.103982860
Scrollbuttons
UI progress from last night
Anonymous 01/21/25(Tue)13:59:59 No.103982880
>>103982845
By the way, that were English words, typed in Serbian cyrilic, so it doesn't make sense...
Real translation: Aкo јe твoј пpoјeкaт oтвopeнoг извopнoг кoдa, вoлeo бих дa гa пoглeдaм aкo нeмaш ништa пpoтив...
Taking a look now at 2nd most shilled new language.
Anonymous 01/21/25(Tue)14:20:45 No.103983081
>>103982860
How does you select which inventory tile the object should go it? In your webm, I as the player would have expected the hat to go on the top left tile but it went in the one to the right of it.

What are you using for your UI system?
Anonymous 01/21/25(Tue)14:28:26 No.103983158
BPrect
>>103983081
It has to do with the rect for the sprite. Since it's isometric and the scale needs to look correct you get overhang. I haven't figured out the solution yet.
Anonymous 01/21/25(Tue)14:28:55 No.103983166
>>103983081
That's where he stores his secret porn stash.
Anonymous 01/21/25(Tue)14:34:35 No.103983219
>>103983158
I would find the center of your sprite that you're dragging around and check over which tile it is. Because right now you have overlapping boxes and check over which the cursor is?
Anonymous 01/21/25(Tue)14:38:06 No.103983267
script
>>103983219
I'm just the artist but I can relay that and see if that's what's happening. I know that only the box has the script attached so idk.
Anonymous 01/21/25(Tue)14:39:18 No.103983280
Show me your 3D game with high fidelity graphics. A screenshot at least.
Anonymous 01/21/25(Tue)14:43:04 No.103983322
1737135493260466
>>103983267
>I'm just an artist
An artist here in /gedg/?!
Anonymous 01/21/25(Tue)14:46:56 No.103983355
yer
>>103982730
1. /v/ has more users than /g/
2. /gedg/ mostly caters to people making their own game engines or using frameworks. /adgd/ caters more towards regular game dev with unity, unreal, godot etc.

i like /gedg/ more because i find the progress here more impressive and chaotic. Also people are nicer.

Day 5
Enemy effects and sounds that you can't hear.
Tomorrow I start adding actual maps and models.
Anonymous 01/21/25(Tue)14:46:58 No.103983356
>>103983322
I dabble in code (I did code the scroll buttons) but I'm an absolute brainlet and that took me 6 hours. I'm on /g/ a lot though so I've always been in gedg. We also did have our own engine going at one point but switched off of it.
Anonymous 01/21/25(Tue)14:47:14 No.103983360
Screenshot_2025-01-21_14-46-20
>>103983267
You blessed us with your presence, I'm drawing sprites for the game I'm making, but it looks terrible, I can only write code. Image related.
Anonymous 01/21/25(Tue)14:48:44 No.103983377
DragonWarriorIII-Scenario-WalletScenario
>>103983360
Nice try for an artlet who never tried. Just keep iterating.
Anonymous 01/21/25(Tue)14:49:00 No.103983380
>>103983360
I gave up on trying to do sprite work a long time ago, it requires actual skill. That's why I took up 3D, lmao.
Anonymous 01/21/25(Tue)14:50:53 No.103983398
>>103980971
OOP is about encapsulation, it has nothing to do with polymorphism. OOP means you bundle data and functions together, and hide implementation details when possible to simplify interactions with an object.

I don't know how this "HURR OOP IS LE INHERITANCE" brainrot started.
Anonymous 01/21/25(Tue)14:51:51 No.103983405
>>103983356
>switched off of it
why the fuck
Anonymous 01/21/25(Tue)14:53:46 No.103983422
>>103983405
custom engines suck
use unreal/unity
Anonymous 01/21/25(Tue)14:54:08 No.103983427
>>103983380
How did you learn 3D? Is it realistic to learn it for an uncreative brainlet like me?
Anonymous 01/21/25(Tue)14:56:00 No.103983444
>>103983405
Unity sucked and unreal was unnecessary which was was what started us on making our own tools (and fuck giving them royalties) and I guess looking into everything Godot can manage all our needs and since we can modify it if we absolutely had to for an issue that arises so we switched.
Anonymous 01/21/25(Tue)14:56:13 No.103983450
isometric_games_grid_labeled
>>103982860
Cozy 2000s vibes. Can you pitch me your game anon?
Anonymous 01/21/25(Tue)14:56:37 No.103983459
>>103983398
read my post again and quote exactly where i said that OOP IS LE INHERITANCE
Anonymous 01/21/25(Tue)14:58:38 No.103983475
>>103983380
I used Blender since version 2.62, which was a long ago, back in like 2011 or something, Maya was too complicated for me, but I used it a bit.
However, making anything beyond low-poly is a lot of work, and game I'm working on relies on lot of content, so I can't bring myself to model everything.
Anonymous 01/21/25(Tue)14:59:59 No.103983491
>>103983459
>polymorphism and the like is bad
Why would you bring up polymorphism when it has nothing to do with OOP unless you think they're related?
Anonymous 01/21/25(Tue)15:01:25 No.103983508
Oldasfuckshit
>>103983427
I basically just kept working on shit I needed for game until eventually I did enough tutorials and things started stick and clicking.

There was a huge shift in my skill that was forced on me by Blender specifically. I started on 2.79b or whatever and all my original sprites that I had worked on for awhile ended up not working/translating at all to my new machine and blender 3.0. So I had to redo everything and learn cycles for a lot of things (previously used blender render which is like eevee I think). I basically ended up actually doing this twice after learning more things I went through and redid a bunch of textures and stuff on things another time. On top of all that I just really really want things to look a certain way and I will work on something for hours/weeks/months until it does. Pic rel. includes a bunch of my old stuff on the way towards where it is now.
Anonymous 01/21/25(Tue)15:02:15 No.103983514
Anonymous 01/21/25(Tue)15:03:38 No.103983525
i'll just make a game without text. fuck font rendering man.
Anonymous 01/21/25(Tue)15:04:05 No.103983532
>>103983491
because people conflate the 2
inheritence/polymorphism is shit and people think that OOP is shit by extension
Anonymous 01/21/25(Tue)15:04:30 No.103983538
oldpixelart
>>103983450
It's a Dransik/Ultima Online mmorpg type.

>>103983475
Yeah creating organic stuff is the crux for sure.

>>103983508
Also pic rel. this is pixel art I tried to make almost 20 years ago.
Anonymous 01/21/25(Tue)15:08:39 No.103983602
>>103982460
Books and videos only get you a small distance and are more so for gaining intuition. The real learning comes from looking at GitHub repos. There’s stuff like the Vulkan examples, Filament engine, Acid engine, Wicked engine, O3DE, Unreal, people’s personal projects, and so on. For example I wanted to know how to setup Vulkan.hpp with SDL so I googled “sdl vulkan hpp” and came across a hello triangle repo with the exact info I needed.
Anonymous 01/21/25(Tue)15:09:40 No.103983619
>>103983525
https://freetype.org/
Anonymous 01/21/25(Tue)15:12:33 No.103983647
>>103983508
its you. i still love your stuff, keep working on it, itd be a shame to let it go to waste
Anonymous 01/21/25(Tue)15:14:19 No.103983668
>>103983475
>>103983538
Here's a bear I tried to make in the past as an enemy, shit sucks ass but I'm sure I can do better now.
Anonymous 01/21/25(Tue)15:15:47 No.103983685
MouseCursorTest
>>103983647
Thanks anon, still working away. Doing UI stuff right now like >>103982860 and webm rel. which shows we have paperdolling and dynamic loading working.
Anonymous 01/21/25(Tue)15:16:49 No.103983699
bearwalk
>>103983668
Whoops, I never attached the file lmao
Anonymous 01/21/25(Tue)15:17:16 No.103983705
>>103983685
how many programmers do you have working on this and when will you replace them with ai?
Anonymous 01/21/25(Tue)15:18:36 No.103983717
>blender can't export more than one animation per collada file
FOSSisters this is why everyone makes fun of us
Anonymous 01/21/25(Tue)15:18:42 No.103983719
>>103983705
42. Completing the neural rack now.
Anonymous 01/21/25(Tue)15:24:15 No.103983775
>>103983717
write your own!
Anonymous 01/21/25(Tue)15:32:58 No.103983875
Whats the development experience like on Linux when trying to do game dev or engine development? Is it as painful as people make it out to be? I'm an engineer in my actual job, and have to use michealsoft binbows for work, but all my personal devices are on Linux.

Really just want to make shit and game development pretty much blends all my interests/hobbies into one thing (writing, art, programming, etc), but would like to stick to Linux, on my main machine I do dev shit on but will switch if I have to.
Anonymous 01/21/25(Tue)15:35:42 No.103983896
>>103983875
I don't think there is a reason to think linux dev sucks when it is precisely the number one platform for obsessed coders. C#, Java, JS, Python, Lua, C, C++, you name it, all of them support linux and there exists IDE for them all. I'm right now using C# plus Jetbrains and it works like a charm.
Anonymous 01/21/25(Tue)15:39:13 No.103983929
>>103983875
Developing on Linux is no different than on windows. I might even say it's easier with systemwide libraries.
The pain point is if you want to ship to linux can be more of an hassle but with flatpak/appimage it's getting easier.
Anonymous 01/21/25(Tue)15:39:29 No.103983934
>>103983875
its the same shit, the only real problem is if you want to support both, that's where you need to use os specific APIs, like file picker or native memory allocation for example
Anonymous 01/21/25(Tue)15:40:29 No.103983943
>>103983875
Its.......okay, you'll run into random inhibiting bullshit all the time with FOSS options like >>103983717 and you'll frequently need to find workarounds for stuff.
Apparently some of the core godot devs work on it full time from Linux, so that would be fine regardless of anything. Personally, its too much of a hassle for me, nor do I think its even worth developing a game that works on Linux. My best friend has a game on steam with a few thousand sales. Linux users make up not even a percent of sales, but are like 65-70% of the errors/bug reports even after putting in monumental effort for it.
Anonymous 01/21/25(Tue)15:41:22 No.103983954
i can barely dev on windows since i switched to linux most of the time, its too smooth of an experience
its not even close, i use WSL but even that lags my pc
Anonymous 01/21/25(Tue)15:45:52 No.103984009
>>103983929
>>103983934
IF I complete a game, I'd definitely want it playable on both windows and linux, so that may be a pain, but it otherwise sounds perfectly doable

>>103983943
>My best friend has a game on steam with a few thousand sales. Linux users make up not even a percent of sales, but are like 65-70% of the errors/bug reports even after putting in monumental effort for it.

Doesn't surprise me in the least, but not really a deterrent for me personally
Anonymous 01/21/25(Tue)15:56:22 No.103984125
>>103984009
>so that may be a pain, but it otherwise sounds perfectly doable
Yes it's perfectly doable.
Anonymous 01/21/25(Tue)16:14:38 No.103984315
Despite having just 5.8% sales, over 38% of bug reports come from the Linux community
>>103983943
Are you this?
Anonymous 01/21/25(Tue)16:21:12 No.103984392
>>103984315
kek and if his game was FOSS the linux community would fix the bugs for free.
Anonymous 01/21/25(Tue)16:28:13 No.103984476
1737494788-677x132
wow, good timing.
was curious to see how far sdl3 was progressing and its out now.
Anonymous 01/21/25(Tue)16:34:35 No.103984564
>>103984476
>SDL2 came out in 2013
Anonymous 01/21/25(Tue)17:41:01 No.103985481
>>103984476
I like new naming convention more than the old one, it's more consistent.
Apart from that, I'll have to write breakout clone or something in it to test it.
I preferred Raylib over SDL2 because it's more consistent and simpler to use.
Anonymous 01/21/25(Tue)17:57:14 No.103985689
ygg-012125-2
>>103983875
Just stick to a framework and/or use libraries that are already working for desktop windows and linux from the start and you're good. Then do a quick concept test build to a binary for your target platforms to ease your mind.
Anonymous 01/21/25(Tue)18:55:26 No.103986347
I enjoy developing with raylib and oop.
Anonymous 01/21/25(Tue)18:56:50 No.103986362
>>103985689
Is that fake pixel art?
Anonymous 01/21/25(Tue)19:02:24 No.103986428
>>103983525
Could make for a unique game if done right
Anonymous 01/21/25(Tue)19:03:34 No.103986442
>>103983717
stop using collada please. horrible format
Anonymous 01/21/25(Tue)19:04:32 No.103986455
2312341095_c9d84cc6e7[1]
>>103983525
Reminds me of flow
Anonymous 01/21/25(Tue)19:21:11 No.103986632
>>103986442
time to make my own 3D model file format
Anonymous 01/21/25(Tue)19:48:47 No.103986940
If your OS makes any difference at all to your dev experience you're a noob
Anonymous 01/21/25(Tue)19:54:56 No.103987016
ygg-012125-3
>>103986362
Pixels don't even exist. Evidence? I just close my eyes
Anonymous 01/21/25(Tue)20:03:34 No.103987109
>>103986940
Retarded opinion, but expected from someone who posts like a bot. I'd rather develop a game on Linux than on ReactOS, Haiku or Plan9.
Anonymous 01/21/25(Tue)20:07:11 No.103987151
>>103987109
99% of my work is writing code that doesn't touch the OS
Anonymous 01/21/25(Tue)21:38:02 No.103988092
1729886494614529
Bump, this thread usually dies when it's night in EU...
Anonymous 01/21/25(Tue)22:58:23 No.103988843
Screenshot_2025-01-21_22-53-03
>>103987151
Everything touches the OS underneath, and that doesn't mean that shit below isn't retarded.
> If your OS makes any difference at all to your dev experience you're a noob
Most retarded thing I've read so far in /gedg/, and this is probably the highest quality thread on /g/.
Progress:
Cleaned some manually managed memory I leaked while prototyping menus and INI script parsing...
Anonymous 01/21/25(Tue)23:03:21 No.103988899
buttonshrink
>>103982860
Few more lines of code and the buttons look pressed
Anonymous 01/21/25(Tue)23:05:46 No.103988926
>>103988843
Noob devs spend their time dealing with package managers, compilers, libraries other people wrote, and the OS
Real devs spend their time writing their own code, I mess with my tools maybe once or twice a year the rest of the time is just writing code
Anonymous 01/21/25(Tue)23:08:44 No.103988953
screenrec001
>>103880409
>>103935991
>>103957239

raylib-prolog progress continues!
Anonymous 01/21/25(Tue)23:09:18 No.103988960
Anonymous 01/21/25(Tue)23:12:12 No.103988988
>>103988953
>>103988960
This is a prolog port of the second example in the raylib examples library https://www.raylib.com/examples.html , the basic screen manager https://github.com/raysan5/raylib/blob/master/examples/core/core_basic_screen_manager.c
Anonymous 01/21/25(Tue)23:36:06 No.103989209
>>103988953
>>103988960
Based Prolog enjoyer.
>>103988926
Then I'm apparently a "real dev", even tho I consider myself a hobbyist, and I write only what I want and like, reinventing the wheel...
Anonymous 01/21/25(Tue)23:48:46 No.103989314
ygg-012125-4
Took a moment to adjust some tiles look closer to how they used to
Anonymous 01/22/25(Wed)01:11:22 No.103989916
>>103983875
What do you mean painful? Unless you're using a prebuilt engine, the experience of making anything in C++ with dependencies is better on GNU/Linux than it is on Windows imo
Anonymous 01/22/25(Wed)01:35:12 No.103990089
ygg-012225-house
>>103989314
Empty house
Anonymous 01/22/25(Wed)02:40:47 No.103990510
So what's the deal with raylib? Any point in switching to it from SDL if I have my own renderer anyway?
Anonymous 01/22/25(Wed)02:57:58 No.103990649
>>103990510
Isn't raylib basically the same kind of shit, but maybe a little bit more effort put into their "SDL_Renderer" equivient API and being a bit less mature overall.
If you're already or going to call OpenGL etc. yourself, there is no point.
Anonymous 01/22/25(Wed)03:14:23 No.103990775
>>103990649
raylib is a barebones game library
SDL is just an OS interface
Anonymous 01/22/25(Wed)05:01:18 No.103991537
>>103990510
I’d say the nice thing with raylib is that it’s modular, so if SDL is already providing something you need then keep it and you can use raylib to fill in things you don’t have yet (if you want, or don’t. no one cares it’s not a religious thing where people expect you to rewrite your things in their language/framework of choice). One thing I think gives raylib a seemingly vocal support group is that it has bindings for so many programming languages, so for people who are fans of a more obscure language raylib finally gives them a decent way to make games using their language of choice.
Anonymous 01/22/25(Wed)05:44:03 No.103991780
>>103984476
Async IO and new sound system looks good.
Anonymous 01/22/25(Wed)06:09:55 No.103991937
I want to add PBEM to my turn based game, is there any way to have it in built p2p without running a server myself? Like to push a notification to someone's steam account with a save file attached.
I saw Game Notifications steamworks API, but it says
>The Game Notifications API is provided through Web API methods and requires a valid publisher key. The Web API method calls must originate from a hosted server that is separated from the game client – the publisher key must not be shipped with any game client code.
This is bizarre to me, I thought the whole point was having steam handle the server side for me?
Anonymous 01/22/25(Wed)06:20:50 No.103992013
>>103991937
maybe some smtp thing if you are fine with email
Anonymous 01/22/25(Wed)06:27:20 No.103992067
>>103991937
>I want to add PBEM to my turn based game, is there any way to have it in built p2p without running a server myself?
You would effectively be using your players' computers as a botnet. Steam definitely doesn't want to have anything to do with that.
> I thought the whole point was having steam handle the server side for me?
Just the notification delivery part of it.
I have some suggestions, but ultimately the question is "When does your game send a player a notification?" Is it notifications you are deciding, or based around something that someone does in game? Are you trying to remind them to keep playing your game?
Anonymous 01/22/25(Wed)06:32:52 No.103992112
>>103992067
>"When does your game send a player a notification?"
It's for PBEM multiplayer. Basically a ping to say "your turn now, here's the save file".
Anonymous 01/22/25(Wed)06:40:16 No.103992167
>>103992112
so whats the question? how to build p2p or how to make notifications?
Anonymous 01/22/25(Wed)07:51:12 No.103992802
(You) could've written Balatro and made a million USD, yet you waste time making your game engine instead
Anonymous 01/22/25(Wed)07:53:03 No.103992824
>>103992802
You could have won the lottery, yet you waste time making your game engine instead
Anonymous 01/22/25(Wed)08:13:06 No.103993015
>>103992824
xqc and markiplier is all you need if your game is good enough, it's not that hard
Anonymous 01/22/25(Wed)08:26:45 No.103993172
(You) could've been born in a rich family, yet you waste your time living instead
Anonymous 01/22/25(Wed)08:48:37 No.103993439
you could be wasting time rewriting your renderer for the 10th time, but you're here wasting time shitposting
Anonymous 01/22/25(Wed)09:33:27 No.103993884
i just wrote my first defragmantable allocator with barely any testing done
i dont know why i thought it would take ages
Anonymous 01/22/25(Wed)10:02:05 No.103994167
1732022339946899
>>103993172
>>103993439
This is definitely some doomer bot...
Progress:
-- Removed some global variables.
-- Wrote (again) XCB rendering backend.
-- Made text-spawn system for pickups.
-- Reworking menu system (again).
Anonymous 01/22/25(Wed)10:32:37 No.103994567
>floor() cannot result in a constant expression
#define floor(x) int(x) // fuck you
Anonymous 01/22/25(Wed)10:38:54 No.103994638
1736264131602573
>>103994567
>he implemented trunc instead of floor
kek
Anonymous 01/22/25(Wed)11:04:50 No.103994907
dragon-ball-z-gohan
just realized I can prototype my gameplay for a simulation game through imgui windows without having to fudge with 3D rendering/assets first
Anonymous 01/22/25(Wed)11:39:15 No.103995334
>>103989916
>the experience of making anything in C++ with dependencies is better on GNU/Linux than it is on Windows imo
why
Anonymous 01/22/25(Wed)11:42:40 No.103995361
What kind of simulation game would you most be interested in?
>People simulator (You probably know what this is)
>God game (i.e, creating a world/planet, and watching over and influencing its evolution, and the evolution of a sapient species and its history, etc)
>"Spacefaring sandbox game" (Think Spore's space stage on crack, but more of a sandbox and freeroaming with a ton of customizability as opposed to stellaris basically being a 4X)
Anonymous 01/22/25(Wed)11:42:57 No.103995363
>work all day one something
>doesnt work
>delete
day well wasted
Anonymous 01/22/25(Wed)11:43:48 No.103995373
>>103995361
I don't care about the theme I care about good gameplay
Anonymous 01/22/25(Wed)11:44:38 No.103995387
>>103982302
Viscosity can be emulated by just multiplying the velocity down in each voxel. Solver should have its own setting for this though.
Anonymous 01/22/25(Wed)12:11:29 No.103995675
>>103995373
But I WAS discussing gameplay...
Anonymous 01/22/25(Wed)12:12:54 No.103995684
>>103995675
you were discussing gayplay
Anonymous 01/22/25(Wed)12:21:58 No.103995759
how the fuck are people paying 15 bucks for Balatro on steam? Apple arcade has it for free
Anonymous 01/22/25(Wed)12:37:10 No.103995917
you wanna make money with your game?
target the lonely incel crowd, guaranteed to be a millionaire just look at that miiside game
Anonymous 01/22/25(Wed)12:40:14 No.103995941
>>103995917
MiSide became popular because it's a horror game. FNaF is a horror game, that Bendy slop was a horror game, Chilla's Art games are horror games. It's all you need, really. The easiest genre to become big as an indie dev.
Anonymous 01/22/25(Wed)12:43:28 No.103995971
>>103995941
>because it's a horror game
wrong
check /v/, it has had threads every day for weeks and people only talk about which girl they wanna fuck
Anonymous 01/22/25(Wed)12:47:55 No.103996020
https://store.steampowered.com/app/1782210/Crab_Game/
You literally could've made this
Anonymous 01/22/25(Wed)12:50:07 No.103996044
>>103995971
i dont think that 4chan is the best representation of a playerbase
Anonymous 01/22/25(Wed)13:11:52 No.103996304
>>103995917
wrong, you have to make mobile adware microtransaction slop
there are countless guides on how to hook and maintain retards who buy into that
>>103995941
those are youtube bait not horror
Anonymous 01/22/25(Wed)13:21:40 No.103996431
The game you make money with is the game you actually finish.
Anonymous 01/22/25(Wed)13:22:57 No.103996450
>>103996431
explain patreon
Anonymous 01/22/25(Wed)13:39:45 No.103996665
>>103996304
>those are youtube bait
Isn't most indie youtube bait horror?
Anonymous 01/22/25(Wed)13:44:18 No.103996717
>>103981159
for (some_fucking_iter) { struct.do_thing() }
Oh wow now I'm doing things with many struct oh my gahhh
Anonymous 01/22/25(Wed)13:45:07 No.103996725
Anonymous 01/22/25(Wed)13:56:50 No.103996904
>>103981159
that's literally the same thing tho
you loop need a this pointer, loop and a pointer to a function in both cases
Anonymous 01/22/25(Wed)14:07:14 No.103997058
>>103992802
Any game I make is gonna be FOSS anyway because not doing so would be against my morals.
Anonymous 01/22/25(Wed)14:13:19 No.103997141
>>103997058
Based FOSS gamedev
Anonymous 01/22/25(Wed)14:13:58 No.103997149
>>103980272
Yo my niggas. I want to make a small project (nothing more than a room where you can move like in a roguelike plus maybe a fight) because I'm a total beginner.
I wanted to do it in C# but only did console stuff. Some guys told me I should do it in HTML/CSS/Javascript for creating stuff with easy interfaces.
Frosch !!QxG8tdNNBUC 01/22/25(Wed)14:17:01 No.103997191
1f317f25-9bbc-4a78-8767-31d9ebf81b84
Guys I don't think I can control myself. I need to rewrite Space Case 3D to use Vulkan. And I need to write it in C and lisp.

>inb4 you shouldn't do this

I can't help myself. Originally I used raylib because the game was supposed to be a "one off" but now that I am more dedicated to it the autism is seeping in.

Fortunately I have like 3 Vulkan renderers I can reuse the code from.
Frosch !!QxG8tdNNBUC 01/22/25(Wed)14:18:03 No.103997205
>>103997191
>and lisp
I"m going to use Chicken lisp. I want to compile to machine code but also have interactive interpretibility when I test.
Anonymous 01/22/25(Wed)14:23:48 No.103997273
>>103997058
I think you can have your game be FOSS and be buyable on Steam at the same time, I bet most players won't bother compiling or downloading someone else's builds. Has it ever been tried?
Frosch !!QxG8tdNNBUC 01/22/25(Wed)14:29:49 No.103997351
>>103997273
Tiled is FOSS but charges for the binaries. You can buy the binaries on itch. I think they did alright.
Anonymous 01/22/25(Wed)14:30:52 No.103997368
>>103996450
YandereDev earns enough to live on from Patreon without even creating anything worthwhile, and while actively being insufferable.
Seems like he figured it out.
Anonymous 01/22/25(Wed)14:44:00 No.103997556
>>103997273
>>103997058
Mindustry seems to have earned a great deal even though it's source available.
Frosch !!QxG8tdNNBUC 01/22/25(Wed)14:49:18 No.103997618
>>103997368
The key is eccelebs.

>>103997556
Oh this too, forgot bout Mindustry.
Anonymous 01/22/25(Wed)14:51:30 No.103997642
>>103997618
I think developers forget how much it takes for a normie to actually clone a git repo and build a game.
Only issue is other developers copying forking your game and releasing it. But just use a license where only you are allowed to release builds for the game it's fine.
Anonymous 01/22/25(Wed)14:53:20 No.103997655
>>103997642
That would be not open source
Anonymous 01/22/25(Wed)14:54:00 No.103997666
>>103997655
Yeah it would. Anyone can change the code and redistribute that changed code.
Anonymous 01/22/25(Wed)15:26:56 No.103998076
sprite_editor
I'm finally joining the ride.
I started that a few months ago but got stuck with personal stuff and work related stuff.
I'm making a sprite sheet manager, to select all the clips, create hit boxes, etc. It will produce a config file for it.
Anonymous 01/22/25(Wed)15:29:27 No.103998114
>>103998076
yeah I have to update the red box when I move the sheet or zoom / unzoom it and remove it when clicking on another input group
Anonymous 01/22/25(Wed)16:22:39 No.103998813
>>103998076
>>103998114
This is super cool, but I do wish you'd disable the anti-aliasing blur for sprites like this.
Anonymous 01/22/25(Wed)16:47:05 No.103999137
>>103983450
arcanum >>> that list
Anonymous 01/22/25(Wed)16:55:37 No.103999236
How hard would that be to rewrite the renderer to the ray tracing one? :)
Given the chatgpt
https://github.com/dhewm/dhewm3/
Anonymous 01/22/25(Wed)17:18:04 No.103999502
>>103999236
Given that you can't even write english I am guessing it would be impossible for (You).
Anonymous 01/22/25(Wed)17:20:34 No.103999539
>>103984476
so is SDL vulkan now?
Anonymous 01/22/25(Wed)17:33:55 No.103999725
>>103999539
yea, it supports that
https://wiki.libsdl.org/SDL3/CategoryGPU
Anonymous 01/22/25(Wed)17:36:19 No.103999763
>>103999502
I'm fine with that - thanks to gpt :)
Anonymous 01/22/25(Wed)17:51:04 No.103999926
1723162202116560m
Sometime I feel bad for machine (chatgpt) having to do it's best to understand third worlders.
Anonymous 01/22/25(Wed)17:55:54 No.103999979
I have resigned my fate and realized that, if I am making games purely as a hobby, I should only make them for PC (i.o.w, no consoles, not even homebrew), and only do genres that make sense for a PC game
I'm looking at doing either RPGs, Simulation games, or (if anyone cares about this genre on PC) Platformers
Anonymous 01/22/25(Wed)18:52:21 No.104000696
>>103999979
I can’t fathom the thought process of making a game/engine for anything other than your own pc. If you get far enough along sure you could probably churn out a steam deck variant. Probably an easy way to make money since those guys are desperate.
Anonymous 01/22/25(Wed)18:56:30 No.104000768
1735032826092772
>>103999979
I can smell the nodev energy from this post.
Anonymous 01/22/25(Wed)19:01:03 No.104000826
>>104000768
and i can see the tranime in your post
go back
Anonymous 01/22/25(Wed)19:06:19 No.104000884
>>104000826
go back where? I was born here.
Anonymous 01/22/25(Wed)19:06:28 No.104000886
Anonymous 01/22/25(Wed)19:10:26 No.104000937
>>104000886
My guess is that you were the guy a while back sperging out about doing homebrew stuff. And now as expected you gave up (you might not have even tried) and are unsure about what genre to even do.
therefore the nodev energy is strong.
Anonymous 01/22/25(Wed)19:11:07 No.104000946
>>104000937
>a while back sperging out about doing homebrew stuff
????
I don't know what you're talking about.
Anonymous 01/22/25(Wed)19:13:56 No.104000995
>>104000946
>sperging out
might be a strong word sorry about that. but there was someone talking about doing homebrew and nothing came of it.
Anonymous 01/22/25(Wed)19:23:29 No.104001097
If I didn’t rack up so much credit card debt on sports betting I could’ve bought myself a 5090
Anonymous 01/22/25(Wed)19:24:18 No.104001103
>>104000768
You are not welcome pedophile leave our community
Anonymous 01/22/25(Wed)19:36:10 No.104001224
>>104000937
>this is your mind when you stay in the same thread 24/7
Anonymous 01/22/25(Wed)19:39:06 No.104001247
>>104001224
gedg is not moving fast so it's not hard to keep up with it.
Anonymous 01/22/25(Wed)20:01:42 No.104001492
Weird question: How would one control a 3D platformer using just a mouse?
A keyboard might not be optimal because there's no analog controls on a keyboard for moving the character, but with the mouse you can get away with using the pointer or the delta of its movement as input for moving the character.
Thing is, other than that a mouse only has 2-3 buttons and a scroll wheel.
Left click for jumping maybe? And right clicking for attacking?
Anonymous 01/22/25(Wed)20:10:13 No.104001579
>>104001492
scroll down for jump, like bhopping

but in general it sounds shithouse
Anonymous 01/22/25(Wed)20:17:35 No.104001664
these madlads
https://github.com/libsdl-org/SDL/blob/main/src/render/vulkan/VULKAN_PixelShader_Advanced.h
Anonymous 01/22/25(Wed)20:17:43 No.104001667
>>104001579
>sounds shithouse
Yeah, fair, but I'm contemplating this control scheme purely because this is PC only and I expect most players to not have a controller.
Anonymous 01/22/25(Wed)20:19:30 No.104001689
>>104001492
>>104001667
Have you used a computer before? You know people play games with the keyboard right?
Anonymous 01/22/25(Wed)20:21:21 No.104001704
>>104001689
Yes, but like I said, controlling 3D games with a keyboard is ass
Anonymous 01/22/25(Wed)20:22:10 No.104001710
>>104001704
How is there a person posting on /gedg/ who hasn't played games on a computer before?
Mind boggling
Anonymous 01/22/25(Wed)20:24:07 No.104001729
>>104001704
There's already a commonly accepted control scheme for 3D platformers on PC.
W to move forward
A to strafe left
S to move backward
D to strafe right
Space to jump

then Ctrl, E, R, F, T G, Q, Z, X, C, V are close to where the left hand usually rests (on the WASD keys).

Then you rotate your perspective with the mouse
Anonymous 01/22/25(Wed)20:25:06 No.104001741
Anonymous 01/22/25(Wed)20:25:43 No.104001751
>>104001492
>we're going to the late 90s early 2000s where gamedev wanted to use the mouse for everything
Hello Peter, are you working on a new black & white?
Anonymous 01/22/25(Wed)20:26:15 No.104001759
>>104001741
So how the fuck do you not know about WASD movement?
Anonymous 01/22/25(Wed)20:26:48 No.104001764
>>104001759
I know about it ofc but it doesn't make sense for *platformers*. For first person games, sure.
Anonymous 01/22/25(Wed)20:27:44 No.104001776
>>104001764
You have Crash Bandicoot in your Steam library
Go and play it
Anonymous 01/22/25(Wed)20:29:00 No.104001790
>>104001776
Nah, I'm good.
Anonymous 01/22/25(Wed)20:29:43 No.104001803
>>104001790
Ok then go and make your mouse controlled 3D platformer see how well recieved it is
Anonymous 01/22/25(Wed)20:30:22 No.104001811
>>104001764
Platformers on PC use the same schema. See Yooka-Lalee for example. Or Fortnite. You seem to be hung up on the first person vs third person thing but it works the same way
Anonymous 01/22/25(Wed)20:30:23 No.104001812
Anonymous 01/22/25(Wed)20:31:14 No.104001816
>>104001812
This is the dumbest conversation I've had on /gedg/ in a while, congrats
You could have just opened any game to see what the standard 3D platformer control scheme is
Anonymous 01/22/25(Wed)20:32:03 No.104001828
>>104001816
I prefer playing those games with my controller, I never think about KB+M when playing them.
Anonymous 01/22/25(Wed)20:33:53 No.104001843
>>104001828
Well considering you're supposedly a game developer aswell as a game player, maybe you should try it instead of asking astoundingly ignorant questions
Anonymous 01/22/25(Wed)20:34:53 No.104001856
Anonymous 01/22/25(Wed)21:10:52 No.104002235
Is there any efficiency difference between say, using four 512x512 textures for four separate objects and using one 1024x1024 texture that has all four in one image?
Anonymous 01/22/25(Wed)21:17:10 No.104002292
>>104002235
yes, you dont have to upload 4 textures to the gpu
Anonymous 01/22/25(Wed)21:22:40 No.104002359
>>104002235
There is, and its impact was shocking to me at first, here's a short story:
> wanted to load 1000 very small textures of different sizes, between 8x8 and 128x128, rectangles and squares, and bounce 60000 of them on the screen.
> Using Raylib (GLFW+OpenGL), it makes 1000 textures as expected, but it has to bind them on each draw call and runs at 6fps on my machine.
> Using my 2D XCB+Vulkan renderer, which packed all those textures into 4096x4096 one, using u/v offsets to access them, binding it only once, it ran at 35-40 fps.
I don't think that it's Vulkan vs OpenGL, because OpenGL is usually faster than naive Vulkan implementation like mine.
I think the huge fps gap came from not binding texture every time I wanted to draw something, which introduced overhead into rendering pipeline.
--
If your textures exceed 4096x4096, you can make an array of them, pack all smaller textures into them with u/v offsets and index into the array, and bind only when index changed per sprite/mesh.
Anonymous 01/22/25(Wed)21:22:40 No.104002360
>>104002292
Even though the 1024 one is 4x as big of a texture?
Frosch !!QxG8tdNNBUC 01/22/25(Wed)21:27:25 No.104002420
https://youtu.be/Pjqw1Gwk0jg?si=RtqX-tULN8CNrbSy
Anonymous 01/22/25(Wed)21:27:48 No.104002424
>>104002360
it takes longer to upload 4 seperate buffers than 1 big buffer
Anonymous 01/22/25(Wed)21:29:52 No.104002441
2025-01-22-211703_2302x2129_scrot
I'm finally free from a boring refactor and now moving on to a more exciting one. It's time to fix all the code that relies on an isometric (dimetric) camera and open up the possibility of experimenting with different camera yaw angles.
Anonymous 01/22/25(Wed)21:31:30 No.104002457
walmart dev is alive!
Anonymous 01/22/25(Wed)21:33:07 No.104002479
>>104002441
Based Anon, I've taken a look at the code, Odin is readable, but it triggers that uncanny valley for me, where it's just like C, but some things seem better and some worse.
In any case, keep up the good work, I personally know a few people who'd like to play a game like that.
Anonymous 01/22/25(Wed)21:35:33 No.104002517
00046-3623263277
>look up how people do damage calculations on Unity
>they literally just access the script component of the collided enemy and call a method
What the fuck? That's the most inelegant possible way. It breaks the abstraction principle and make the code really tightly coupled. Is there no better way?
Anonymous 01/22/25(Wed)21:39:44 No.104002561
>>104002424
>>104002359
Ah, I see what you guys mean.
Thanks.
I guess that makes sense in hindsight.
Anonymous 01/22/25(Wed)21:48:46 No.104002679
>>103997666
OSD, point #2:
>The program must include source code, and must allow distribution in source code as well as compiled form
https://opensource.org/osd
Anonymous 01/22/25(Wed)21:52:43 No.104002727
Have you ever had to use a single string variable for more than one purpose? Like putting four numbers into it and using String[0]+String[1] and String[-2][+String[-1] to effectively use it as two Integer variables? Would be silly if you had to do that because of some retarded ass hard-coded engine limitation, ha... haha..
Anonymous 01/22/25(Wed)21:53:51 No.104002740
>>104002727
skill issue
Anonymous 01/22/25(Wed)21:58:29 No.104002799
>>104002517
What abstraction principle does it break? Be specific
Anonymous 01/22/25(Wed)22:05:25 No.104002892
how can people dev on windows? even the sound mixer is lagging, not to mention visual studio or any terminal application
Anonymous 01/22/25(Wed)22:07:04 No.104002909
>>104002892
yeah sound universally doesn't work on any windows system, windows users just put up with it
Anonymous 01/22/25(Wed)22:07:21 No.104002917
>>104002892
We don't live in a third world using celerons from 15 years ago?
Anonymous 01/22/25(Wed)22:08:11 No.104002923
>>102757204
nobuild.h
Anonymous 01/22/25(Wed)22:09:10 No.104002938
>>104002917
i have ryzen 2700x with 32 gig ram
the mixer lagging started 2 updates ago
Anonymous 01/22/25(Wed)22:18:57 No.104003045
>>104002938
Meaningless info. You're ram could be installed wrong, bad BIOS, etc. Works on my machine.
Anonymous 01/22/25(Wed)22:19:46 No.104003055
>>104002799
THE abstraction principle. But doesn't matter, nigga.
Anonymous 01/22/25(Wed)22:22:25 No.104003088
>>104003045
>started 2 updates ago
it's clearly the bloated OS
Anonymous 01/22/25(Wed)22:22:38 No.104003090
>>104003055
There's different levels of abstraction
Calling a method on the object you want to attack is an abstraction, so I wonder why you think it's inelegant
Anonymous 01/22/25(Wed)22:26:25 No.104003140
>>104002441
You made this engine? That's cool!
>>104002479 indicates the code is somewhere. Please spoonfeed me a link?