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

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

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


Janitor acceptance emails will be sent out over the coming weeks. Make sure to check your spam folder!


[Advertise on 4chan]


File: frac.png (569 KB, 1920x1080)
569 KB PNG
Fractals Edition

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

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

previous: >>109409705
>>
>>109427296
First
I love simulating projectile motion
>>
I AM INTERESTED IN WEBMS OF YOUR GAMES/ENGINES IN PROGRESS

only posts videos, I am not interested in irrelevant /gedg/ discussions
>>
I gave up.
>>
>>109427358
Vibe code it
>>
>>109427358
probably a smart move. life is too short to waste on yet another engine no one will ever use.
>>
>>109427296
What’s next? Sacred Geometry in OpenGL?
>>
File: 65.png (329 KB, 1431x962)
329 KB PNG
>>109427365
I did that
>>
File: 1376735590711.jpg (333 KB, 600x600)
333 KB JPG
So, I was looking for ways of generating binding for shaders for Rust, so I can make sure the structures are synchronized and have proper paddings and aligment and all.
I found some crates, one of them seemed the most feature complete and had the most stars. I tried it out and it worked fine except for few edge cases, which is not really strange for a cutting edge libs. I decided to try fix these issues and holy fucking shit. This is single-handedly the worst Rust code I have ever seen, and I have contributed to quite a few rust codebases so far. This shit is so bad it's hard to put it in words. It feels like Java Enterprise Quality slop, except it's even worse because it doesn't follow standard design patterns, it's just has hundreds of functions and methods and every one of them is either single line or has dozen of variables and they all are used once most of the time. There are random structs everywhere, tons of pointless builders, init structs, wrappers, etc. Doing any simple operation jumps you through few dozens of random functions that barely do anything. They all form a the worst code spaghetti I have ever seen. I genuinely would rather work with some machine translated Tractor C than trying to make sense of this code.
The developer looks indian but I am sure he also uses some AI for this shit. This is not code a human would come up with. This is probably also the first jeet Rust code I've seen, there isn't many of them.

I wasted 3 days trying to make sense of this code and I hated every single minute of it. Thank you for reading my blog.
>>
>>109428730
>generating binding for shaders for Rust
I just use DeclReflection from slangpy in a script. Make a little daemon from it to amortize the startup cost and you've got a nice responsive dev setup.
>>
>>109428816
Yea, I think I will just use wesl/naga-oil and write my own bindgen. After all I don't need anything fancy, just structs generation and maybe bind groups. There is another library that is much more leaner than this shit and I think I will just use it as a base.
>>
>>109427358
Do it in Vulkan for the ultimate challenge
>>
>>109427358
>no shiba inu
#notmyfag
>>
File: asd.png (371 KB, 1289x2968)
371 KB PNG
This is now complete.
I am free.
https://codeberg.org/headlesschook/copyright_infringment_bird
>>
>>109428380
>Serium engine
I'll make the logo
>>
File: 1774061453069473.jpg (31 KB, 456x320)
31 KB JPG
>what if, on top of making my own game engine, I also go for:
>heavy serialization
>heavy replay focus that demands high performance
>and it needs to agree across all players since it is gameplay relevant
>>
>>109431465
You have to do less since fanout is O(N^2), so you need to reduce the work itself your simulation has to do. Batch, coalesce, broadphase, replication once serialization, etc. I can give you more on this if you want.
>>
>>109431017
>build files in repo
you really don't care, do you anon?
>>
>>109431685
Explain.
>>
>>109431733
why would you put object files and a.out into version control?
>>
>>109431758
Because I don't know any better?
>>
>>109431655
It's not terribly hard just a lot of work time consuming and sometimes I think of how much time it's consuming, definitely more than the entire rest of the engine so far.
>you need to reduce the work itself your simulation has to do
My case is a bit special: it's a headless simulation that is recorded as a replay and sent to players. Like Combat Mission or Dominions. Performance at recording time isn't too important within reason, the important one is the replay format on the client so the player can scrub the timeline without any hitches.
>I can give you more on this if you want.
If you have nothing better to do, please do, though I'll have to sleep soon so I'll read in the morning.
>>
File: 1785624807221762.png (41 KB, 797x359)
41 KB PNG
>>109431685
>>109431758
I have untracked bin/ and build/.
>>
>>109431935
nice. try building it for the web with Emscripten, and put it on itch. it shouldn't be too hard.
>>
>>109432037
I have dabbled with that before but I ended up removing it because it's like 1.2gb and updates constantly.
>>
Switching to indirect drawing more than doubled my FPS
>>
>>109431733
>>109431824
(nta)
Usually you only want to track source files in git, not generated files or binaries.
So you would track C/C++ source but ignore bin/build, you would track .hlsl shader source but ignore the generated shader binaries, you would track your sprite files but if you're packing them into an atlas you wouldn't track the generated atlas.

There are a few reasons for this and some of them don't become obvious until your project gets a bit bigger, or you start working on it across more than one computer, or you start collaborating with someone else.
Example 1: Generated binaries (a.out) will be different across different machines, so trying to track them in git will cause headaches.
Example 2: If you're trying to look up what changed in some old commit, you're usually only interested in changes to source files and any changes to generated or binary files are just noise.

It's not an absolute rule. I sometimes decide to track generated files for various reasons.
>>
>>109432935
Makes sense. I don't want to bloat up my repo so I will stop doing it.
>>
you wake up alone in the forest with nothing but amnesia and a gun
>>
>>109435551
Who's Amnesia?
>>
is there abook that describe what game engine does and what i should expect from one?

I have downloaded and built the Trial game engine, but I don't know how to use it at all. I am trying to make a front end for my game which looks like dungeoncrawl stone soup or nethack. I wrote a ncurses front end and draw it with ASCII, but I want to draw it with bitmap tiles now.

I can use a webview and html canvas to make the front end and skip the game engine.

Or I can try to figure out what game engine is and use it to draw my front end some how?
>>
>>109435871
anon I think you have some very weird mental blockages
>>
>>109435999
that was a very insightful retort.

I am just going to trace the demos that come with the engine and see if i can get it working.
>>
>>109431366
just don't AI generate my shit up senpai
>>
Engina, a game engine for women.
>>
>>109436584
what features would it have?
>>
>>109436603
the help menu takes you to the planned parenthood website
>>
File: cs.mp4 (105 KB, 768x720)
105 KB
105 KB MP4
>>109427296
Some cloth simulation
>>
>>109436603
Pink Ui with cute cartoons and sound effects
>>
>>109436813
cool, but kinda jerky
>>
File: ssim.mp4 (1.69 MB, 720x842)
1.69 MB
1.69 MB MP4
>>109436889
Looks fine at normal speed
>>
>>109436931
yeah, it's alright. good job.
>>
>>109435871
You can create a wrapper. It's not that easy at first but rendering terminal contents into a new window with tiles is simple with raylib for example
>>
>>109436943
thanks, the sad thing is the game (if I ever make one) will only be able to use a much gutted version of this for the player or NPCs

Because even with low polygons, it's way too many calculations every frame
But I am happy that I figured something out
>>
File: 1785508064682529.png (48 KB, 683x601)
48 KB PNG
im doing a fnaf 2d game with phaser. but idkhow 2 draw. do i really gotta learn inkscape/gimp to make sprites and ,maps and shit
>>
im going to write a book. but idkhow 2 write. do i really gotta learn the alphabet to write a book and shit?
>>
File: 1762356379490734.png (11 KB, 211x246)
11 KB PNG
>>109439611
>I want to make drawings
>do I really gotta learn how to draw?
What do you think?
>>
dead thread
>>
>>109440482
Nah just write the book

>>109443966
idk what to do
nobody posts anything interesting discusses anything related to video games
>>
gedg needs games and not more engines. Make gamejams thats going to help more than writing yet another educational opengl renderer.
>>
>>109444100
>idk what to do
>nobody posts anything interesting discusses anything related to video games
it's because the thread isn't trans friendly enough
>>
>>109427296
>>
>>109444622
this is the game engine thread
>>
>>109444622
orginally this was a GAME ENGINE thread
>>
this thread is a game engine
>>
File: 1782965320119747.webm (3.36 MB, 1920x1080)
3.36 MB
3.36 MB WEBM
Fart Fighter
>>
>>109439611
Aiaiai it
>>
File: 1758376723209290.jpg (2 KB, 125x67)
2 KB JPG
>there are threads in my game engine
>>
What about games you make without an engine which are themselves engines?
>>
how long would it take me to make world of warcraft from scratch? I don't know anything about computers btw
>>
>>109445049
noice
>>
>>109445448
couple weeks.
>>
>>109445448
Depends, how many tokens you got?
>>
>>109445499
All of em
>>
File: oy.mp4 (2.21 MB, 720x802)
2.21 MB
2.21 MB MP4
>>
File: 2026-08-02 22-26-10.webm (2.7 MB, 1920x1080)
2.7 MB
2.7 MB WEBM
Progress!
>>
>>109446379
Neat
>>
>>109445569
I came buckets
>>
>>109446470
Anons that a dude.....
>>
>>109446503
so am I, what's your point?
>>
>>109427296
Should my engine support QD3D RAVE just in case?
>>
A true next-gen game engine would simply AI generate 144 frames per second from an evolving prompt.
>>
>>109446831
way too inefficient
what nVidia calls "DLSS" is the future of game rendering but at the moment consumers fucking hate it
>>
>>109446836
It's only "inefficient" because you're doing it wrong. You need to use human neurons. Computers of tomorrow will run on hamburgers and coffee.
>>
An artificially induced & computer-managed dream state is the ideal rendering method.
>>
They should make an artificial pussy that feels just as good
>>
>>109447361
you know, I wonder how the "they're just neurons, they're not a person" crowd would react to scientists using human cells to grow organic fleshlights
>>
File: file.webm (1.08 MB, 1608x1104)
1.08 MB
1.08 MB WEBM
>>109427329
>>
>>109447401
They'd call you a misogynist and then try to charge you with pedophilic rape since the fleshlight is under 18 and didn't consent.
>>
I did some stuff in monogame
>>
I game some mono in stuffdid
>>
File: jacket.mp4 (3.44 MB, 720x1344)
3.44 MB
3.44 MB MP4
>>
Ultima is underrated
Im going to make my own Ultima with Blackjack and Hookers
>>
>>109450803
Ultima is overrated, they're all janky as fuck
>>
>if i mod enough skyrim and new vegas I will have a game eventually it worked for the factorio guy with skyrim
>i learned what an .esm and .esp file are today
>>
>>109453776
with minecraft*
>>
>>109428380
Hows that going anon?
Im also very close to throwing all my code into the trash because it's dogshit and re-writing it with Claude. Fully embrace what I do for 8 hours at work for my personal projects too and be free.
>>
File: oracle36naudio.webm (2.72 MB, 800x748)
2.72 MB
2.72 MB WEBM
>>109427329
Background animations working.
Honestly im at the point where I need to figure out what type of event system Im going to use for my zelda like game. Most of the online talk and tuts recommend using an Event bus architecture, but that seems kinda overkill?
I could just have a bunch of triggers and actions associated with that trigger per room.
>>
File: MYtwoPixels.png (7 KB, 810x634)
7 KB PNG
sdl3 is going to be comfy
>>
>>
thank you pikuma-sama
>>
>>109454816
I will need to switch from sdl2 eventually, but can't find motivation. it does everything I need.
>>
>>109450803
Arx Fatalis?
>>
File: 1425858988406.jpg (3 KB, 124x87)
3 KB JPG
I am getting closer to 2 weeks of working on my game and 0 new lines of code added to my game codebase. All the time wasted looking for right libraries and tooling, submitting fixes to them, forking in disagreement.
But I swear I will write at least one actual shader for the game today.
>>
File: out.webm (1010 KB, 800x600)
1010 KB
1010 KB WEBM
Wee

Anyone has any idea what's the correct formula for this? I just did
Mat4::from_translation(Vec3::new(0.0, -1.0 - (time / 2.0 * 3.0).sin().abs(), 0.0).rotate_z(time))
* Mat4::from_rotation_z(time * 2.0 + PI)

and it looks nearly ok, but something is off.
>>
>>109457747
yeah, the PRs I made for different libraries and compiler bugs I reported (mostly for msvc) when working on my engine are bigger net worth to the humanity than the engine itself. I may never finish my engine, but all those detours were worth it.
>>
I don't want to fall to programming hell again but at the same time I don't know the knowledge necessary to move on.
Where to I learn the actual basics of game programming? Like for example, Jon Blow says one should not start with opengl and even slightly suggests to just use raylib because it will just let you start drawing shit on screen, right?

Alright then I go and use DrawRectangle and start checking for collisions and shit but that's it. I have no idea how other stuff about game development work. Like how is a world handled? How does, for example in a platformer/metroidvania, how is the world drawn an how do I know where the player can jump on top of? How does a camera work, etc...

I feel like the gap between knowing how to program, knowing how to draw a triangle or rectangle, and actually understanding gamedev , and maybe linear algebra is weird and not clear.
Do I have to forget about programming altogether for the next 4 months and just go read a linear algebra book before touching code again?
>>
>>109460642
mean to say tutorial hell, ffs
>>
>>109460642
Just start doing it and solve each problem as it comes. Ask AI, if you don't want to waste a bunch of time googling.
>>
>>109460642
linear algebra will teach you absolutely nothing about gamedev, it's math
go learn to use Unity
>>
File: out.mp4 (1.18 MB, 1472x710)
1.18 MB
1.18 MB MP4
>>109459390
Compute shaders go brrr
>>
>>109460642
>I have no idea how other stuff about game development work. Like how is a world handled? How does, for example in a platformer/metroidvania, how is the world drawn an how do I know where the player can jump on top of? How does a camera work, etc...
Do you need to know that?
Like can't you just make a list of platforms with position and size and just draw them and check their collisions?
And once you have that hardcoded list, you might want to write a function that reads a file from disk and constructs that list based on coordinates from a file.
And once you have that function, you might make your game list all these files in levels folder on start and let you click on any name, which will then run that function, load that list and display these platforms and player instead of that list.
And once you have that you might make some global state/system that will hold current MENU_ID enum that will decide if the game is displaying level list or a level or a title screen.
And once you have that you can make it so when you press F5 the game stops calculating movement and you can move platforms with mouse, and add/remove using right click, and when you press F6 it serializes that list back to that file.
And once you have that maybe make the level file also contain coordinates of enemies and pickups that will modify some global player struct that contains player hp and exp.
etc etc
>>
>>109460694
it will teach you graphics programming not game dev programming and not NURBS just staging frames optic views and some light tricks
>>
>>109456108
i've never used any sdl for anything but emacs rendering emacs so there's no switch cost for me just an even steven start
>>
>>109461328
>>109461041
>>109460694
>>109460678
Thanks guys. I'll keep trying.
>>109460694
>go learn to use Unity
I always wanted to do the approach of not using engines and building from scratch. But yeah, maybe I do need to just focus on making games to get over my paralysis by analysis and constant procrastination.
>>
>>109462222
Working with existing engines will surely help you get intuition on how to organize your game's systems, state and logic.
For me, Source engine and Unity were my first exposure to game modding/development and so my codebases often share common patterns with them.
>>
>>109460642
You're overthinking it. Just follow a tutorial on making a simple 2D game,
and you'll go from drawing rectangles to making something that actually looks like a game in no time.
>>
>>109464271
i dont play 2d games why would i make something i hate and cant have fun with
>>
>>109465473
Eat your veggies, and do some stretching before hitting the road

2D games are an order of magnitude easier to understand and work with early on, and almost everything you learn transfers well to 3D

if you want to make 3D games, you should first learn the basics by making simple projects like a mario clone or a zelda clone
Once you're comfortable with those fundamentals, you can add another dimension to them.
>>
>>109465473
why tf would you learn linear algebra when you want to learn how to make a game retard?
>Like how is a world handled? How does, for example in a platformer/metroidvania, how is the world drawn an how do I know where the player can jump on top of? How does a camera work, etc...
Ah yes, I will pick up a linear algebra book and this will now make sense. - the deranged
Okay: think about this, a 2D game is orders of magnitude easier to learn "how does a world work, how to objects work, how do classes interface with eachother and are instantiated, what the heck is a method, global, game loop?" not linear algebra, unless you're trying to learn something like graphic engine design or something.
Think of the 2D game as a learning tool that's going to pay off answering the questions you actually wrote about. And maybe you'll actually figure out a way to make a 2D game fun and not gay like the ones you've played before as a bonus
>>
File: file.jpg (273 KB, 1620x1224)
273 KB JPG
>>109447636
Added a pixel editor, one can edit textures and animations live while the game is running. Useful for touch ups without having to alt-tab then export and reimport.
>>
u guys is there something that explains what a window/context is? I am trying to draw tiles in SDL. So far, I have a window and am not sure how to draw stuff in it. Is there a book that describes this? I tried to read the documentation but it didn't describe what a lot of stuff is.
>>
>>109467531
Context can mean anything, it's often the root structure of a library or framework that holds the most important stuff. Window is a graphical widget that programs can create and use to display stuff. Your OS typically adds some decorations to the window that lets you close it, minimize, maximize itp.
Typically you'd use some cross platform windowing library or OS api to spawn a window, and then you grab something called a surface from it that you pass to graphical api like vulkan or opengl so it can initialize there and use it to display stuff.
Considering you use SDL, it should do all of this for you. I haven't used SDL myself for long time, but AFAIR, it should have functions to just spawn a window, draw some stuff on it and maybe initialize opengl or just give you a surface to initialize opengl on it. If you are just starting, there is no reason for you to get in the weeds of opengl and such, and just use the drawing api that SDL provides.
Doesn't it have some getting started examples that just display a sprite on a window? You should start form there.
>>
>>109467531
In OpenGL, it's a massive blob of global state about what options you have set, what commands you have recorded etc, all bundled into the "OpenGL context". Multiple different components in theory could have their own contexts or even threads having their own OpenGL contexts, but doing that isn't super common.

Bringing this back to SDL, who's renderer is built on top of OpenGL internally, it kind of has to inherit that design. So a context is just a massive blob of global state.
>>
>>109465535
because i like linear algebra
>>
File: 09f.jpg (830 KB, 1290x1269)
830 KB JPG
>>109444622
yeah dude just reskin more grafted arm flesh to kandria for your troonware port of super mario world everyone will like that

>fallout 3 is just elder scrolls reskinned and new vegas is fallout 3 reskinned
>ultima is just a DnD campaign plus a tiling chessboard of preVGA DOS box arcade pixel blobs
yeah dude keep shitting on ENGINES yknow the part that looks like NEW GAME JUST DROPPED not new DLC sequel
>>
>>109467930
>yeah dude just reskin more grafted arm flesh to kandria for your troonware port of super mario world everyone will like that

Niggers will babble anything instead of making games
>>
>>109467938
you dont belong on /g/
you dont contribute to technical discussions
>>
File: HOrje_yXcAA6nau.jpg (131 KB, 900x842)
131 KB JPG
>>109467950
Idea of actually making a game is really pissing you off
>>
File: gabe-newell-time.webm (148 KB, 498x479)
148 KB
148 KB WEBM
>>109467938
>>
File: hq720 (6).jpg (66 KB, 686x386)
66 KB JPG
>>109465535
>>109465488
ok i'll settle for isomorphic from total 2D code with art that is baked isomorphic illusion and code complexity up from there.


I already made a little 2D top down car dodging racer in pygame but most amiga tier 2d shit aint worth posting. I also made a doom clone that turns my filesystem into the backrooms. (It requires a lot of engine work to port even that.)
>>
File: hqdefault.jpg (40 KB, 480x360)
40 KB JPG
>make my own Ultima Pagan Fallout 1
has every task I want yes
every rabbit hole I want yes
>>
>>109468056
I always wanted to remake Pagan
It was my first RPG, loved the graphics and the atmosphere, but it was very unfinished and the gameplay sucked
>>
>>109467986
I’m just in awe of the visceral reaction some people have when someone suggests that aspiring game developers should make games instead of waiting for their engine to be finished before starting their magnum opus.
>>
>>109468205
I already made games though.
>>
>>109428730
> Rust
Filtered
>>
>>109468205
there are 3 gamedev threads on 4chan
this one is about making engines
>>
File: E8AH2EFVgAAkIcY.jpg (28 KB, 500x460)
28 KB JPG
>>109468205
>the eternal bitching about game engines in a game engine thread guy wont go away like we want him to
>>
File: s-l1200.jpg (359 KB, 1200x1200)
359 KB JPG
IP
IP always changes
(this is the best game and fiction ever made and nothing will ever come close)
>>
File: 2026-08-05 17-31-01.mp4 (137 KB, 800x600)
137 KB
137 KB MP4
>>109427296
Checking out Love2D.
I wrote some small World of Warcraft addons like ten years ago, Lua is cute.
>>
>>109465917
How do you handle changing textures and animations of an active entity? One that's being rendered on screen at the moment?
>>
>>109468586
Completely out of topic, you fucking faggot.
Anyway...
*steps on ur toes and tramples ur shitty mid gamu*
>>
>>109468586
>>109469060
sure is latin america in here
>>
Soooo
what's the difference between making an engine and making a game without an engine
just making tools here and there as you go?
>>
>>109469182
when people say "making an engine" they usually just mean making it from scratch
>>
>>109469182
An engine is somewhat reusable.
A game like pong does not need an engine, it just needs a way to display 3 rectangles, 2 numbers and track like 10 variables.
>>
>>109469236
I mean you can def re purpose pong's engien to make that block smashing game
or space invaders
>>
>>109469259
Not if it's just that. You'd need to change pretty much all the code.



[Advertise on 4chan]

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

[Enable Mobile View / Use Mobile Site]

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