[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip / qa] [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


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 1721329017489157.png (94 KB, 1049x831)
94 KB
94 KB PNG
/gedg/ Wiki: wiki.installgentoo.com/wiki/Gedg
IRC: irc.rizon.net #/g/gedg
Progress Day: rentry.org/gedg-jams
/gedg/ Compendium: rentry.org/gedg
/agdg/: >>>/vg/agdg

Requesting Help
-Problem Description: Clearly explain the issue you're facing, 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:
>>101432497
>>
>>
>>101476972
Valve is not a triple-A game development company, sir.
>>
File: 1717119245983125.jpg (35 KB, 377x414)
35 KB
35 KB JPG
I love being a gamedev
>>
>>101476972
ah valve, the company that spent tens of millions of dollars on an AI learning anticheat, before changing the way commands are interpreted in the game it was targeted at, thus making it useless.
valve died a long time ago, btw.
>>
>>101478057
that pic is massive cope
>>
File: not-an-argument.jpg (77 KB, 1200x675)
77 KB
77 KB JPG
>>101478733
>>
>>101476972
Yet they made genre-definers across the board and own the biggest sales platform. Size doesn't matter if you're that good at making money.
>>
File: sand.webm (1.68 MB, 1334x814)
1.68 MB
1.68 MB WEBM
>>
Trying to render cursive fonts properly in my engine. Shame there's no single header solution for shaping text.
>>
>>101480948
Looking good, post code.
>>
>>101480948
Now do liquids
>>
>>101480948
are u making a new noita
>>
>>101476047
I had to break my /gedg/ self-vacation for a bit because of the HAPPENING that's going on.

I really hope you lads aren't using Windows.
>>
>>101481611
just dont install ring 0 spyware on your machine and youll be fine
>>
>>101481488
>>101481279
Doing multiple chunks now

>>101481521
Just experimenting, but thinking of a metroidvania
>>
File: screenshot.png (2.73 MB, 1927x1106)
2.73 MB
2.73 MB PNG
I heard you liked octrees, so I put octrees inside octrees.
>>
>>101481803
>>101481828
i only know about octtrees from blockland
>>
http://www.andreasaristidou.com/FABRIK.html
It tickles me that the FABRIK implentation tutorial uses Roblox
>>
>>101476972
and because of that the salary is insane
>>
File: imk.png (11 KB, 538x354)
11 KB
11 KB PNG
>>101482084
>>
File: 3aFe0.jpg (45 KB, 825x620)
45 KB
45 KB JPG
>>101482337
vgh...
>>
>>101482412
Taken from us too soon because the dev couldn't figure out how to have maps and shadows/shaders at the same time.

The funny part is people eventually decompiled the game and figured out how to have both, meaning it was possible all along despite his gaslighting (i mean why the fuck wouldn't it be).

He just wanted to rush to make pretty lighting for screenshots so it could get greenlit on steam and earn free money
>>
>>101482560
in retrospect blockland forums was a literal cia-tier recruitment centre for 4chan basement dwellers (or maybe thats just me)

i still remember the april fools shit when it was "4kids chan", so much fun

its such a shame the classic forum styling got disabled. badspot is truly such a lazy git its unreal. bless him.
>>
File: screenshot.png (1.94 MB, 1927x1106)
1.94 MB
1.94 MB PNG
>>101481828
I will now proceed to spend spend rest of the week mixing random noise functions instead of doing anything productive.
>>
>>101482649
AFAIK the BL forums produced at least one one school shooter as well as the creator of Kiwi Farms. There was definitely something in the water there
>>
>>101481828
>>101482698
This shit is sick as hell. Nice work. Voxels seem so OP I wonder why they don't take over games more than they do (noita & teardown for an example). I guess I'm just saying, why not even more?
>>
>>101482761
its a small world... i think the user on blf was called iban or something, but that was before my time.

i do remember the shooter incident, i think the forums got investigated.

lord of the flies esque environment. having a dedicated drama section was genius in retrospect. that really was the social milieu that everyone was *in*, well, that and off-topic. i cant say this for sure, but i wouldn't be surprised if at some point there were more active forum users than in-game players. it was definitely a joke at some point, that many "players" played the game like once a week, but spent 8 hours a day posting on the forums.

there was actually a point in my life where i set the homepage of my browser to point to blockland forums. cringe to think about now.

i also enjoyed the informal caste system of BL_ID ranking - the lower your BL_ID, the higher your caste. guys with sub 1000 were revered elders, and the sub 100 were truly the high priests.

i feel like some time i should sit down and do a write-up, if only for myself, of this time period. i basically grew up on the blf, certainly my young teenage years. thinking back, there were a lot of really weird guys on there, but because i had no reference point i naturally accepted it as the state of things.
>>
>>101482875
difficulty probably eg. there was a gdc talk from the noita devs like had to do quite a lot of fancy stuff to get it to work
>>
File: sandx4.webm (715 KB, 1308x844)
715 KB
715 KB WEBM
>>
>>101463297
>minecraft modder
>2010
>employed
>education software
Oh hey Dan long time no see.

>>101441206
I'm not spending any brain-power on this but try row4 = { 0, 0, 0, 1}.

>>101482875
Probably because there's not enough ways to control the player in a sandbox.
>>
>blockland
wtf is this shit?
https://www.youtube.com/watch?v=O8vfparwRjw
>>
>>101481828
>splats
what the fuck are you rendering this with
>>
I'm currently reworking how objects are handled.
Now I'm handling where the object can be placed, for example, windows can only be placed on walls. Plates could be placed on the floor, counter or a table. Also the tool to place those objects will be unified for all of them.
>>
File: screenshot.png (1.63 MB, 1927x1106)
1.63 MB
1.63 MB PNG
Ok fixed the shitty LOD curve and it does this 20.5k * 20.5k map at 120-200fps with virtually invisible LOD at 1920x1080. This will scale to infinity at this point ..
And I know there's some inefficiencies eating 30% of my perf, and I've yet to re-enable early fragment tests. Also a compute shader splatter could theoretically improve this 5 times further.
Infinite voxel rendering is solved ... now we need to invent infinite RAM.

>>101483881
Point quads cropped into voxels in a fragment shader. LOD achieved by using a color-averaging SVO and drawcalls minimized by another "geometry octree".

>>101482875
Chasing the optimal voxel renderer is a rabbit hole you wont escape for a decade. Most voxel games never leave the tech demo hell.
>>
File: 1713505906868690.jpg (51 KB, 844x884)
51 KB
51 KB JPG
ECS might actually be a meme but I can't back down now...
>>
>>101482875
voxels dont look better than triangles, they're just good for destructable terrain
>>
>>101485707
Definitely a meme but every thing is a meme when you think about it. Love ECS.
>>
>>101476047
How do you keep focused?
I keep doing irrelevant stuff like posting on 4chins and other forums.
I've stopped gayming and anime watching, but I can't stop shitposting.
Every minute that passes that I am not being productive feels like I am wasting my time and makes me feel guilty.
>>
>>101485976
nobody is productive every waking moment
>>
>>101485999
But I have to.
I work all day so I have very few hours to be productive on my own.
If I devote just a couple hours each day it will never be finished.
>>
>>101485976
Start being productive from your first waking moment.
>>
>>101486050
>I work all day
that's why you can't stay focused
>>
im making a cross-platform 2D C# game framework and it's getting pretty far along. goal is to build a monogame/XNA successor that leverages modern c# to the best extent possible and is explicitly targeted for rapid 2D game creation.

* sokol + cute + stb for platform stuff and collision
* dearimgui for gui for now
* ecs (arch)

one main thing im working on is making it dead simple to work with. this alone in program.cs will show a square:

Zinc.Engine.Run(new Engine.RunOptions(1920,1080,"zinc", () => {new Shape();}));

im working on porting all the docs over but its all open source here:
https://github.com/zinc-framework

code samples for demos here:
https://github.com/zinc-framework/Zinc.Demos/tree/main/Zinc.Demos/Demos
>>
>>101485976
I've made myself air gapped PC in a separate place solely for work.
>>
>>101486432
>ecs
please don't fucking do this
>>
>>101486432
well if you're going to leverage modern c# to the best extent possible why not follow this >>101486836 advice without following it since people really seem to hate writing ECS code
write a roslyn extension or whatever the proper modern c# compile time metaprogramming tools are called that takes an ostensibly normal object model and reshapes it into a ECS based one
>>
I'm so fucking bored, I don't know what to do. I have many side projects lying around and I want to work on none of them.
>>
>>101487516
liquid sim
>>
>>101487518
>liquid sim
So I add yet another one to the list which I'll drop in 5 days?
>>
>>101487524
Just don't start a project unless you know you will continue to enjoy working on it. Pretty simple actually
>>
>>101487516
port some CPU SIMD based libraries to your GPU and hyper-optimize them
it's fun
>>
>>101487533
>Just don't start a project unless you know you will continue to enjoy working on it
I guess it's the novelty effect, I usually love it for the first week or two then I effectively lose interest in it
>>
>>101487518
Not much of a physics guy, I don't even know where I would start with a thing like this.
>>
>>101485976
You have to treat it like a job. Set goals and attain them. If you work hard and persist you can be successful, that's all it really takes.
>>
>>101476047
how did frogfag get a job from drawing triangles all day in various languages?
>>
>>101488251
just apply for jobs
>>
>>101488267
i already have a job i am just curious how this happened
>>
Why not ECS sirs?
>>
>>101488414
>composition hard
>>
>>101488578
Isn't ECS meant for decomposition instead?
>>
If you are using C I hope you are testing with tinycc, this shit is fast as fuck https://repo.or.cz/w/tinycc.git
>>
File: build.png (47 KB, 1380x80)
47 KB
47 KB PNG
>>101488921
Of course
>>
>>101488921
what's the performance of TinyC builds like compared to normal compilers?
>>
Off topic. Help me /g/edgods, I'm not feeling the childlike curiosity today, I don't want to do anything. What should I do to get back into it.
>>
>>101489291
fap
>>
>>101489329
That sounds gay. Why would I want to beat my meat to someone else having sex?
>>
>>101489339
notice i never suggested that but your porn addled cuckmind immediately assumed it
>>
>>101489442
mind = blown
You win good sir.
>>
>>101489291
Read fairy tales https://www.gutenberg.org/ebooks/2591
>>
>>101488996
Based. with the option danger you don't need release. Also checkout profile guided optimization.
>>101489053
Comparable to gcc -Og
>>
>>101488414
It's different. Components are plain data, and systems update these data, but if you want to operate on these data outside the systems you gotta create helper functions or something because methods are not allowed.
>>
>>101482412
had so much fun building shit inside the mattress and the windowsill
amazing game, shame it's dead
looking forward to Brickadia finally hitting early access soon though, looks like it'll be a nice successor
>>
>>101490107
Please elaborate on this sir. What's wrong with functions?
>>
>>101490343
Nothing, he wants to disparage ECS by adhering to a narrow definition of it.
>>
>>101490368
>adhering to a narrow definition of it.
ECS IS the narrow definition you fool, otherwise it's just composition
>>
>>101490343
Nothing. But I would rather have them as methods, keeps everything organized.
>>
>>101490421
It is not, you are the only one here and everywhere who screeches internally at the use of functions or methods with ECS.
>>
On topic of ECS, how would you guys rate bevy on the rate of easiness to create a game?
>>
>>101490628
>rust
0/10 you will not ship
>>
>>101490636
Don't worry I'm not trying to ship anything even if I use another language
>>
aggydagger here
do you game make porn games? asking for a friend.
>>
>>101490536
That was another poster, if you decide that ECS means whatever you want it to mean then it doesn't really mean anything
>>
>>101490628
>no games shipped
>Rust
>ECS
It's the ultimate nodev engine
>>
>>101490758
Started with the default template, it started compiling 300 crates. Is this the power of rust?
>>
>>101490777
anon, bevy is a FULL engine (how long would it take if you were to install a godot-like engine in C++ ???)
if you want to use ECS just add bevy_ecs, which is way lighter
you can use ecs with any other graphic library
>>
A cube no way whoa
>>
>>101490861
my bevy equivalent engine has about 5 dependencies
>>
>>101490719
go away furry coomer
>>
>>101490897
and mine is 10 LoC
>>
>>101490861
>anon, bevy is a FULL engine (how long would it take if you were to install a godot-like engine in C++ ???)
ohfuck. It pulled the entire engine, that's alright I'm already halfway done. Hopefully subsequent rebuilds are instant
>you can use ecs with any other graphic library
cool, maybe look into that later
>>
>>101490777
what is this jabbascript? kek
>>
>>101490915
I don't think you can write bevy in 10 loc
>>
>>101490938
i don't think you can write bevy in 5 dependencies (unless they are huge, and still i don't buy it) either, who is in the wrong?
>>
>>101490978
>i don't think you can write bevy in 5 dependencies
OpenGL
OpenAL
Maybe something to deal with the OS
what else is required?
>>
>>101490978
glfw + glad + some resources libraries
all you need
>>
>>101491003
i laughed
>>
>>101491020
Can you answer?
>>
>>101491025
git gud
>>
>>101491056
I am good, that's why I can write an engine with 5 dependencies instead of 300
>>
>>101491025
if your answer to having 300 deps is having 3 deps called opengl/al/os, then you are just hiding the complexity under the rug, i can too inline every bevy crate into a single crate, woah 1 deps!!!
>>
>>101491081
>he needs an is_even crate
>>
>>101491081
Why seperate your project into hundreds of different "crates"?
>>
File: file.png (3 KB, 561x21)
3 KB
3 KB PNG
>>101490777
It took half an hour but it's finally done. I can now finally get started with the game. Thanks /g/ays
>>
>>101483919
What are you doing? a The Sims clone?
>>
>>101491109
the project itself is not splitted into 300 crates
https://github.com/bevyengine/bevy/tree/main/crates

most of those 300 are transitive deps
>>
>>101491181
>splitted
ESL DETECTED, GTFO
>>
File: 1688742035581986.jpg (31 KB, 500x502)
31 KB
31 KB JPG
>>101491165
>30m
>>
>>101491209
it took you so long? i made other errors before, don't tell me you are a fellow esl too
>>
>>101491227
I build my entire engine from scratch unlike you guys. I don't trust anybody.
>>
>>101491240
I too build my engine from scratch and it takes less than a minute to build
>>
>>101491181
and what exactly is a "transitive dep"
>>
>>101491273
you have dep A that needs dep B, when you install dep A you then must install dep B, B is transitive because even if you didn't specify B you still pull it in the background
>>
>>101491315
Well that brings me back to my inital point, you shouldn't need that many dependencies
>>
>>101491335
if you don't see value in reusing the same code in different projects it's a (you) problem
>>
>>101491406
You keep jumping back and forth between external dependencies and internal modularity
>>
>>101491427
and you keep changing topic, 300 deps are bad because you can inline everything in your 3 file project? that's your argument?
>>
I give up. How do people even use rust for making games?
Rust tards lied to me, it still takes 5+ seconds on every code change, I was told it'll be instant and blazingly fast to rebuild. And god forbid if you need any other dependency because that's gonna take another 5 minutes because rust-ANALyzer will fuck your SSD with cargo in the background
>>
no wonder why so many webshitters like bust so much
>>
File: 1852648917132145.jpg (94 KB, 971x799)
94 KB
94 KB JPG
>pointless bickering over stupid shit
Nice progress guys, real nice
>>
>>101491469
that was fast kek
>>
>>101491454
You can inline internal dependencies (things you've written yourself), you can't inline external dependencies
If you have 300 external dependencies, what the fuck are you doing?
If you have 300 internal dependencies, well that sucks too but maybe you need to do this to cope with Rust's compile times
>>
>>101491469
>How do people even use rust for making games?
they dont
>>
the games made using SDL, are they usually programmed in C or C++, is C a better choice since that's what SDL was also written in?
>>
>>101491504
The vast majority of game developers use C++ instead of C
>>
>>101491504
it doesn't really matter use whatever you're more comfortable with
>>
>>101491490
>you can't inline external dependencies
you can inline those too, literally copy paste
>>
>>101491517
Well yeah but it's bad practise
>>
>>101491517
i'd rather write it myself at that point
>>
>>101491483
>>101491501
It downloaded 5 gigabytes of dependencies, it doesn't build instantly even after the ridiculous compile times, yeah I'm done.
>>
>>101491537
>5 gigabytes
how many lines of code is that, hundreds of millions?
>>
>>101491586
that also includes build artifacts
>>
>>101491537
damn that's javascript level of bad
>>
File: BtXln4.png (403 KB, 800x450)
403 KB
403 KB PNG
What is /gedg/'s opinion on Raylib? I saw it on the wiki and checked it out; it looks like it has all the features I want (except for sound which it seems to be ass at, but I guess I can use fmod for that like everyone else does), plus if I want to port whatever mess I end up making to the Nintendo Switch there are ports of this library that can do that, but I'll also be learning C++ at the same time that I will be learning Raylib so there are probably some problems with it that I'm just not seeing right now.
>>
>>101492712
I've heard it's a pain to use for 3D, that's about it, it's said it's good for 2D stuff
>>
>>101491469
Surprise! https://loglog.games/blog/leaving-rust-gamedev/
>>
>>101493230
should be in the op
>>
>>101492748
Good enough for me, considering the most 3D I plan on doing is some GTA2-style top-down thing
>>
>>101492712
For audio consider
https://solhsa.com/soloud/
https://miniaud.io/
>>
>>101486836
>>101487200

im using ecs mostly as a way to organize backend engine code and not forcing it on the user. ecs is a good paradigm to organize engine function around — if you're got 10,000 objects and you need to render them, are you just going to foreach over them every frame and fuck your cache? having stuff like RenderItem components with render meta stored on them makes for quick and easy coordination of stuff like that. input handling/emission is also nicer, etc. i think the ecs meme is real but it also does have real use cases and is a great pattern for specific things.

and to the point of >>101487200 this is exactly already what I'm doing. I give people gameobject-style apis for enties on the front end but behind the scenes its all comptime ECS stuff i generate with source generators. so you can do stuff like picrel.

you can read my blog post about it here:
https://kylekukshtel.com/csharp-ecs-component-source-generator-gamedev-arch
>>
>>101494446
>if you're got 10,000 objects and you need to render them, are you just going to foreach over them every frame and fuck your cache?
That's exactly what an ECS does
You should put them in a spatial partition instead
>>
>>101492712
>I can use fmod for that like everyone else does
https://github.com/kcat/openal-soft
https://solhsa.com/soloud/
https://github.com/mackron/miniaudio
>>
>>101494632
i think you need to read more about ecs and memory layout. the point of ecs iteration is that it's all memory aligned and (sometimes cached). chunks and archetypes iterating over aligned blocks of memory is significantly faster than iterating over 10,000 random GameObject classes that are not aligned at all. structure of arrays vs. arrays of structures, etc. spatial partitioning and culling are half step solutions but also mean you're having to conform unrelated objects that happen to share some needs together, so enjoy all your case logic inside your render hot loop.
>>
>>101487200
>people really seem to hate writing ECS code
Who? Some people just hate everything that is popular or mildly popular like inheritance or garbage collector. You will never satisfy them.
>>
>>101494819
In ECS, everything is stored in one array, so you will iterate over all 10,000 objects to find the objects you need to render. O(1) operation
Put them in a spatial partion, and you reduce this to an O(log n) operation. This is significantly faster
>>
>>101494842
sorry meant to write O(n) operation not O(1)
>>
>>101494842
and how do you know which objects to put in that relation, dumbass?
>>
>>101494897
I don't understand the question. Put in that relation?
>>
In programming, spatial relations refer to the relationships between objects or entities in a spatial context. It involves understanding and manipulating the positions, distances, orientations, and interactions of objects within a given space. Spatial relations are commonly used in fields such as computer graphics, geographic information systems (GIS), computer vision, robotics, and video games.

Spatial relations are often represented using geometric shapes, coordinates, and spatial data structures such as points, lines, polygons, and grids. Various algorithms and data structures are used to efficiently process and analyze spatial relationships, such as spatial indexing, bounding boxes, and spatial partitioning.

Programming languages and libraries often provide tools and functions specifically designed for handling spatial relations, such as geometry libraries, GIS tools, and spatial databases. These tools enable developers to perform complex spatial computations, analyze spatial data, and create interactive spatial applications.
>>
>>101494939
I said spatial partition, not spatial relation. A spatial partition is a data structure, like an array is a data structure. Octree, KD tree, list grid, etc
In a game, every object that exists in space should be inside a spatial parition. This is much faster than ECS with arrays
>>
>>101494972
>A spatial partition is a data structure, like an array
>This is much faster than arrays
real retard hours
>>
>>101495022
if you have an array of renderable objects, let's say 10,000, and you want to find a a list of objects that fit in the screen, let's say 100, you have to do 10,000 iterations and check every one
With an octree, you might only have to do 300 iterations
>>
so you just read the wikipedia article about carmack and how he liked octrees back in the 80s and now you parrot this like it's the holy grail, gotcha
>>
>>101495077
I think you mean BSPs and the 90s
Literally everyone uses spatial partitions, if you are sticking renderables and collidables in arrays to do "ECS" you don't know what you're doing
>>
I wanna make a 2D action rpg with 5 bosses and 16 mobs. 4 different weapons and player can throw those weapons. How hard would this be? I never made a game before so I really have no idea. Would a year of working at most an hour at night after my job be enough?
>>
File: file.gif (189 KB, 800x600)
189 KB
189 KB GIF
started building this space invader style clone. I'm learning. Need to still add enemies.
>>
>>101495108
No. Given your lack of experience with that little time you'd need at least 10 years
>>
>>101495108
>working at most an hour at night
you'll never make it
>>
>>101495108
if you can pull in good hours on weekends you might make it, but with 1 hour, you'll get hung up on bugs for a week at that rate
>>
>>101494829
im >>101486432 and can say that writing ecs code sucks. the reason is that entities are (mostly) literally just integer ids and components are sort of like entries in a table with that entity index. these are then worked with through systems that "handle" the ECS stuff, which, notably, is NOT user level API stuff.

so to "work" with entites and components you end up writing a ton of wrapper functions and methods to actually do stuff outside of systems (pure ecs is insane so this is always required) and it means you are effectively maintaining two seperate layers of entity logic — what happens in systems and what happens in the "game". riding that boundary is hard.

>>101494842
> In ECS, everything is stored in one array
okay you clearly don't know what you're talking about so im going to stop responding to you. feel like you have crib notes understanding of ECS in order to validate your own opinion on it and aren't interested in anything beside what >>101495077 indicated
>>
>>101495139
>>101495119
>>101495116
Fuck. There goes my dream of making an stupid indie game for steam. Would using AI help me with this? Like to make characters and code and stuff?
>>
>>101495197
more precisely ECS components are usually stored in sub-arrays of archetypes but that doesn't change the point at all, it's still O(n) vs O(log n)
>>
>>101495221
Again no. AI is a total meme outside of toy js/python scripts.
>>
>>101495221
>Would using AI help me with this? Like to make characters and code and stuff?
sure if you want to make something that really sucks
>>
>>101495221
AI will not help you figure out your game mechanics, it might help fix some bugs though
>>
>>101495268
> I will keep subtly changing my point to cover up for the fact I don't know what I'm talking about
>>
>>101495317
>subtly changing my point
The point has nothing to do with ECS. It's storing your objects in a list vs storing them in a spatial partition. You're nitpicking to avoid acknowledging the point
Closing your mind and refusing to learn is the hallmark of a bad programmer
>>
File: 1716542039789019.webm (541 KB, 640x960)
541 KB
541 KB WEBM
>>101495114
are you following the godot tutorial? I made this
>>
>>101495221
The world doesn't need your crap, don't worry.
>>
>>101495108
>I never made a game before
>equivalent of 2 months full-time work
fucking kek anon
>>
>>101495392
It's a 2d action game made with Godot. How hard could it be?
>>
File: 1451356275849.jpg (35 KB, 458x319)
35 KB
35 KB JPG
>>101495844
>>
>>101495108
https://youtube.com/playlist?list=PLZ-54sd-DMALOePYMiM9aOj49eM8tWxly&si=BwUkS1flhuSnba2a

I learned how do exactly this from these tutorials. Some of the few actual comprehensive guides for godot shit. There are several series and different topics on how to make diablo style games. Just take your time on each step, back up your work and try to understand exactly what every line of code is doing. Post your progress
>>
>>101495363
Nope. I'm just freestyling it without any tutorial. Though it seems we got to the exact same assets.
>>
>>101495363
>>101496203
Also forgot to mention. I'm using Odin + Raylib for the game.
>>
>>101496220
>odin
lolmao
>>
Has anybody done any renderer design interviews at big game/tech companies?

I am trying to compile a list of potential questions they could ask.

1) Design a modern rendering pipeline for various types of devices. Consider tradeoffs between forward rendering, deferred rendering, and tiled renderers.

2) Design a dynamic shadow rendering system. Explain real world estimates for number of lights, triangles, and shadow resolution.

3) Design a system that batches textures together into a group of texture atlases. Consider tradeoffs as objects are created and destroyed.

4) Design a multithreaded renderer that performs work on background threads and submits commands to queues asynchronously.

Any help is greatly appreciated
>>
>>101496615
They are unlikely to ask you questions like that, you're applying for a junior position, they will ask you to solve smaller problems
Maybe something like question 3
>>
>>101495197
this jargon is retarded. things that are in your game should just be a struct, and all of the data about that thing should be in the struct. if you need to start indexing things (e.g i need the subset of these million entities which are pink) then go ahead and make another array with the object's id (aka its index in the main array)

why make it any more complicated with "systems", a totally meaningless word? there are only structs and functions.
>>
>>101496642
im applying for a very senior position. im basing my preparation on real time rendering edition 4. yes i should probably just know everything already but it never hurts to get feedback and maybe help some other people along the way :)
>>
>>101496700
You're applying for a very senior position, but you're reading books on the topic like you don't already know it and you're asking /g/ for advice?
>>
>>101496719
You consciously posted this thing, when you could have simply answered the question.
>>
>>101496736
Are you familiar with this topic, do you have several years experience working in the industry designing renderers?
>>
>>101496754
Yes I do, else I wouldn't have passed all the previous rounds. Also, you should know that interviews are very contrived and artificial compared to real life day to day work.

There are no lists anywhere on the internet for the topic, so we have to use our brain to guess what conceivably could be asked.
>>
>>101496777
So is it a game company or some other sort of tech company
>>
>>101496793
in my case its netflix XD
>>
>>101497113
I was going to say if it's a big game company you might want to be familiar with stuff like GPU driven rendering
>>
>>101482984
I would read that
>>
File: John_669H36wKcz.webm (2.19 MB, 1024x768)
2.19 MB
2.19 MB WEBM
Added directions to my editor. Blocks can now have a different image on each face thanks to new UVs, so the editor now lets you choose which direction a block is facing
>>
>>101497169
the thing is though that big tech companies like netflix, amazon, tiktok, facebook, google, snapchat etc are all doing various levels of their own 3d development (without using unreal or unity), so the questions that a game company would ask and a tech company are blending together. its all just rendering via vulkan/metal/dx at the end of the day
>>
>>101497262
if you're getting hired by a game company, you wouldn't be being hired to reinvent the wheel, they will be working on cutting edge stuff for the next gen of game engines
if you're being hired by a big tech company, I'm guessing they would just want you to reinvent the wheel
>>
some lighting effects, particles and screen shaking is all the effects I need
>>
>>101497328
thats the thing though, whether its warranted or just a hazing exercise, they put you in these contrived interviews where you dont actually need to reinvent shadow mapping and z buffers on the job but you do in the interview, because allegedly "muh fundamentals". in reality you'll spend most of your time figuring out why some shader compiles incorrectly on some system.
>>
File: rotation.png (275 KB, 1996x1496)
275 KB
275 KB PNG
>>101497185
Here's an example
>>
>>101495337
What prevents you from keeping spatial components in partitions sir?
>>
>>101498019
If you do that you're no longer doing ECS
>>
>>101496686
> tell me you’ve never worked a games job without telling me you’ve never worked a games job


go back to jerking it while reading the game engine black book and doom source code instead of telling me what to do
>>
>>101498066
fuuny coming from the guy who doesnt know what a spatial partition is
>>
I thought ECS was shit then I realized I can just put pointers to all the important stuff inside the structs
>>
>>101498142
so you thought ECS was shit until you stopped doing it?
>>
>>101498142
Yeah I don’t really like using ECS. I use EC. I put whatever I want into components and modify them wherever I want.
>>
>ECS is cache optimization
>you cannot do cache optimization without ECS.
>OOP clears your cache every time you de reference a pointer.
brain worms
>>
>>101498053
Why not sir?
partitions = {
surface = { { entity_id, x, y, ... }, partitial_component2, ... },
underground = { pc3, pc4, ... }
}
>>
>>101498235
ECS stores components in flat arrays
If you store them in a spatial partition they are no longer stored in flat arrays, so it's not ECS anymore
>>
>>101498235
I meant "spatial component", "sc".
>>
>>101498258
What do you mean sir? What can stop me from keeping spatial components both in partitions and flat arrays at the same time?
>>
>>101498307
It's about storage and access. You store them in a flat array, they are accessed by systems which iterate over them in order
If you are accessing via pointers in a spatial partition you are no longer doing this, it's not ECS
>>
>>101495363
it feels very distracting
>>
>>101495114
Love the background
>>
>>101498351
Sir...
partitions = { { sc1, sc2, ... }, { sc3, sc4 } }
flat = { sc1, sc2, sc3, sc4 ... }

At the same time.
>>
>>101498699
Something can't be stored in two places at once
You have storage and you have pointers to storage
ECS iterates over memory as it is stored to maximise cache hits, if you're iterating over a collection of pointers you don't get that
>>
>>101487516
Start and abandon numerous projects. Only work on the ones you feel like. If something doesn't feel worth working on, it isn't; trust your instincts. Something worth working on will hold your attention long-term.

>>101490915
>my game engine is 10 LoC
Average K enjoyer.

>>101491081
>i can too inline
Yeah, you can inline a bunch of garbage you don't need.

>>101491109
Not going to actually look but probably half of those 300 crates relate to cross-platform abstraction. It's also irrelevant because clean builds are very rare.

>>101491537
You made the right choice, anon. Rust's abysmal compile times disqualify the entire language from gamedev. I think there's a blog post somewhere about how to speed up bevy incremental builds thoever.

>>101493271
Seconded.

>>101494446
>pressing the shift key is le hard for me
I will ignore your blog.

>>101496615
There seems to be a lack of questions whose answer is "use RenderDoc".
>>
>>101499356
>I think there's a blog post somewhere about how to speed up bevy incremental builds thoever.
lmao, every time
>ummm actually sweaty, it's not Rust. You need to do these 15 things for it to be even close to acceptable
>>
should rename the general to ecs and rust at this point, what a disgusting thread
>>
>>101499356
How on earth is renderdoc going to tell you how to implement an algorithm? It will only tell you, if you have a brain to comprehend it, whether you've fucked up or not.
>>
Im retarded IRL, but I pulled it off
>>
>>101498801
> Something can't be stored in two places at once
What and why not sir?

> You have storage and you have pointers to storage
Of course sir, how can I fit 10k components data into registers? There will be a pointer to region in memory sir.

> ECS iterates over memory as it is stored to maximise cache hits, if you're iterating over a collection of pointers you don't get that
Knowing that components have necessary fields of simple types (or arrays of such, not a pointer), what prevents me from allocating chunk of memory and putting components data one after another sir?
And what prevents me from splitting the chunk into virtual partitions if I have OCD sir?
>>
>>101499599
Why do you keep saying sir? Are you trolling?
>>
>>101498416
what does
>>
>>101499620
What's wrong sir? I'm trying to be respectful (sir).
>>
>>101499645
If you want someone to give you serious answers stop being fucking annoying
I think you're asking why can't you store data in the spatial partition, the answer is because it's very slow because you have to do a ton of copying to move stuff around
The other stuff you said doesn't make sense
>>
>>101499491
It's only like every 3rd thread that this happens.

>>101499497
>has rendering issue
>refuses to use RenderDoc to debug rendering issue

>>101499599
>>Something can't be stored in two places at once
One simply reprograms the Memory Management Unit (MMU)
>>
>>101499666
But cache miss "problem" is solved.
If you don't want (or if it doesn't fit your conditions) to split memory and move components data, you can partition with pointers, which still refer to the same chunk of memory.
Can you elaborate on "doesn't make sense" part?
>>
>>101499748
You're posting nonsense, I don't understand what you're saying
Memory can only exist in one place
You can have pointers to memory but then you lose the cache locality which is what ECS is about
>>
>>101499748
I'm talking about CPU cache and you?
>>
>>101499809 -> >>101499769
>>
>>101499809
The things you're saying are vague and disjointed, I don't know what to say, this conversation is tiresome
>>
>>101499831
Are you trolling?
>>
>>101499843
No, there's a communication barrier here and it's not worth overcoming
>>
>>101499859
Sorry for wasting your time.
>>
No idea if this is the right thread but I'd like to recreate the era/emuera engine while having character & environmental interactivity relegated to (cloud) LLMs while having everything else (stats, inventory, movement, etc) relegated to regular code. Apparently someone is already working on something identical or very similar in Unity but I'm allergic to that shit and UE would obviously be extremely overkill for a fucking text adventure. Is there an existing engine that can run on potatoes and runs on multiple platforms?
>>
>>101500095
What do you need an existing game engine for? It doesn’t sound like you need rendering/physics/audio/etc..
If you are going to implement it yourself, this is the right place to be.
>>
>turn GC off in my game
>game allocates 1gb memory/second to the heap
>literally no performance difference
>in the event that the GC needs to happen (this never occurs) it takes a quarter of a second to clear it
why do cniles get uppity about this
>>
>>101501121
>allocates 1gb memory/second
erm
>>
File: 1544364142112.jpg (510 KB, 1085x775)
510 KB
510 KB JPG
>>101501143
I put all my vectors/matrices on the heap. I use lists for everything. frequent code paths allocate strings in every method. I don't give a fuck because janny ALWAYS cleans it up.
>>
File: anonymous.png (105 KB, 258x254)
105 KB
105 KB PNG
>>101501203
based
>>
>>101476047
I'm so proud of this general, I remember when it was proposed by an anon or two. Keep on keeping on.
>>
>>101501203
Its funny, when I started gamedeving I tried being smart about it and doing things in as optimal as I could way. But over time when feeling lazy I would "temporarily" do a quick, but good enough, solution to test stuff, and I started realizing the shitty solution are always just fine with no noticeable issues.
I should have listened to everyone saying to optimise when you need to not before.
Still use C++ though, cause its fun. My pointers are smart, so I dont have to be
>>
>>101496552
You can lolmao all you want
>>
>>101499356
>Start and abandon numerous projects. Only work on the ones you feel like. If something doesn't feel worth working on, it isn't; trust your instincts. Something worth working on will hold your attention long-term.
I've been doing that forever, that's why that side project folder is tens of gigabytes by now.
>>
>>101499356
>Start and abandon numerous projects. Only work on the ones you feel like. If something doesn't feel worth working on, it isn't; trust your instincts. Something worth working on will hold your attention long-term.

This is good advice. Reminds me of the Structured Procrastination strategy.
>>
>>101497185
>>101497603
Holy shit, good work anon.
>>
File: anonymous.png (10 KB, 694x313)
10 KB
10 KB PNG
>>101501890
You can still get autistic about certain portions of code, right? Do you run timed debugging? (idk what it's called)
>>
>>101501949
For perspective I'm a javalet LWJGLer that just uses opengl bindings. I barely know C/C++. I failed a fucking meta interview so bad the guy was laughing. "Uh...that's what the java version of that structure is called, yeah". FML
>>
>>101501949
Definitely, but now I only autisticlly focus on code when I feel like it, not out of some perceived obligation to do it right.

>Do you run timed debugging? (idk what it's called)
Not sure what you mean, but my debugging is all just playing my games and shoving print statements in my code desu. I am not a coder by profession so I am mostly winging what I do
>>
File: anonymous.png (309 KB, 1291x867)
309 KB
309 KB PNG
>>101501990
Ah, I don't either. All I do is print statements too, but it's something I wish I had a solution for.
>>
>>101501890
I want a programming language with tard pointers.

>>101501949
>timed debugging? (idk what it's called)
Profiling?
>>
>>101502050
Yeah, but just not memory. With emphasis only on miliseconds. I guess that's just timed profiling. In my java environment I'm quite happy with VisualVM. Haven't really looked into if it can do time though. I know it's out there but god I don't have time for everything.
>>
File: anonymous.png (100 KB, 1598x791)
100 KB
100 KB PNG
>>101502069
picrel
>>
>>101501890
>My pointers are smart, so I dont have to be
This but I use Rust for the same reason. My compiler is smart(&retarded sometimes) so I don't have to be.
>>
>>101501962
tell us the questions they asked you
>>
>>101501962
>making fun of you for using Java
it's just like /gedg/
>>
File: stronghold.png (35 KB, 1284x750)
35 KB
35 KB PNG
While refactoring portions of the code I've come to the sobering realization that the direction of the project in terms of maintainability is pretty off course, I have no idea how to architecture a game and my current approach of just shitting out code is beginning to prevent me from adding additional features so I believe I have to completely change direction if i am to make any headway
To that end I think I'll be putting the roguelike on hiatus while i try and figure out a way out of this mess. Ultimately if your game has any sort of wide scope you need a good foundation and you can't just bruteforce everything like i've been doing so far
>>
>>101502953
cope, seethe, dilate

how hard is it to...


typedef struct gamething{
physdetails* phys;
drawdetails* draw;
controls* controls;
uint16 hp;
} gamething;
>>
File: 2024-07-21_16-55.png (14 KB, 2066x1060)
14 KB
14 KB PNG
i started implementing BC1 compression today. im not quite there yet but i made good progress
>>
>>101502953
Just start over. Ive done it on games 4-5 times to finally dial in the scope of what I actually want to do.
>>
>>101502991
love these "just structs and functions" dudes who have never made a game before
>>
File: 1429849292.jpg (37 KB, 474x479)
37 KB
37 KB JPG
How do i become a PROgrammer?

t. amateurgrammer
>>
>>101503210
Pick up some dialect of Lisp, then find a Haskell sperg and continuosly try to outjerk him implementing non-standard control flow structures. Then switch roles (you Haskell, opponent Lisp).
>>
File: file.gif (117 KB, 800x600)
117 KB
117 KB GIF
I'm kinda having fun ngl. I still have to do collision + sound effects. Also spawning enemies, enemy healthbar, powerups, levels, ship change, area of effect explosion/weapon. God damn, I'm filled with so many ideas. I thought this was gonna be like some shitty shooter, now I'm feeling like this could be way better.
Is this what every game dev feels like when they're filled with so many ideas?
>>
>>101503266
99.9% are idea guys who never get passed 2 functions and downloading a sprite pack, the rest want to commit suicide
>>
File: 2024-07-21_18-17.png (29 KB, 2294x994)
29 KB
29 KB PNG
>>101503083
im pretty close now, still artefacts in solid colour regions th
>>
>>101503083
>i started implementing BC1 compression today
If you use OpenGL it just does it automatically
>>
>>101503266
i have a lot of games i want to make. some of them are too big for me to make on my own so ill probably never make them, the rest i am chipping away slowly at. i work in a fairly large game company (not quite AAA but still fairly large budget) as a programmer though and that leaves me quite exhausted usually so its hard to work on my own things.
>>
File: dagger.jpg (336 KB, 1440x1798)
336 KB
336 KB JPG
>>101503618
yeah im not im making a software renderer :>
>>
>>101503635
you mean you are or you aren't?
>>
File: 2024-07-21_18-30.png (18 KB, 1252x815)
18 KB
18 KB PNG
>>101503659
im not using opengl. i am making a software renderer, it looks like picrel currently. still pretty basic but im going to make a fps game with it or something hopefully
>>
>>101492712
It's good but it has some shortcomings that you would love to see in a proper framework that other frameworks have that it's lacking. No support for repeated textures, no support for cached text objects (so a lot of text = a lot of glyph vertex recalculation) and stuff like that. I also don't like that the header is using super generic names for functions and types without a prefix, polluting the namespace, but I'm using it from C++ so I just wrapped the include in a namespace.
>>
>>101494897
You do something similar to culling. When you load a level or whatever, you calculate objects visible within a reasonable space, then store them in a separate array, and after you move certain distance, you update that cache. I guess you could call it chunking.
>>
File: 2024-07-21_18-43.png (33 KB, 2601x1249)
33 KB
33 KB PNG
>>101503612
was just a division by zero now it works ok i think
>>
File: 1426217369168.jpg (19 KB, 300x188)
19 KB
19 KB JPG
>>101503771
Is there something as easy as raylib but for 3d?

>I just wrapped the include in a namespace.
pls explain
>>
>>101503818
>Is there something as easy as raylib but for 3d?
Nope
Modern 3D is intrinsically complicated and hard to simplify
>>
>>101503818
>Is there something as easy as raylib but for 3d?
Raylib has a lot of 3D functions, like camera, model loading, materials and stuff, but it's not sophisticated because actual cutting edge 3D tech is super complicated, but if you're making a simple game, it should suffice. It also doesn't prevent you from actually using OpenGL yourself, if you feel like the base features are limiting, you can just expand on top of raylib.

>pls explain
I just made a header that includes raylib inside of namespace, then I include that header instead, so all of the raylib stuff gets lives in raylib:: instead.
#pragma once

#include <cstdio>

namespace raylib {
#include <raylib.h>
}
>>
>>101503697
Sick. Make sure to include some juicy glitches!
>>
>>101499491
Vulkan baiting was getting tiresome.
>>
>>101499769
>Memory can only exist in one place
What the fuck are you on about idiot?
>>
File: minecraft.png (239 KB, 807x1220)
239 KB
239 KB PNG
>>101501203
This will eventually bite you. And a quarter of a second is actually huge.
>>
>>101503848
that fucking works? fuck C++ is a polished turd (C)
>>
>>101503210
become a brogrammer instead
>>
File: 3d.jpg (74 KB, 1154x484)
74 KB
74 KB JPG
>trying to reverse engineer a 3d model format
>the vertex data seems alright
>adding the faces fucks it all up
its all so tiresome
>>
>>101504389
looks like incorrect indices
>>
>>101504280
you don't know how #include works?
>>
>>101504441
its a text expand effectively, I just never thought of doing that
>>
>>101504441
C uses includes
>>
jeets in my gedg??!
>>
>>101504414
this are probably the indices
SPolygonGeometry.IndexArray Array_I32 [ 0, 1, 2, 3, 2, 1, 2, 3, 4, 5, 4, 3, 6, 4, 5, 4, 6, 7, 7, 8, 4, 9, 4, 8, 8, 10, 9, 11, 9, 10, 9, 11, 12, 13, 12, 11, 14, 12, 13, 12, 14, 15, 15, 0, 12, 12, 0, 2, 12, 2, 9, 4, 9, 2, 16, 17, 18, 19, 18, 17, 17, 20, 19, 21, 19, 20, 20, 22, 21, 22, 20, 23, 23, 20, 24, 25, 24, 20, 24, 25, 26, 27, 26, 25, 25, 28, 27, 29, 27, 28, 28, 30, 29, 30, 28, 31, 31, 28, 16, 17, 16, 28, 28, 25, 17, 20, 17, 25];


which i end up transforming into faces like this
f 0 1 2
f 3 2 1
f 2 3 4
...
>>
>>101500095
>Apparently someone is already working on something identical or very similar in Unity
where can I read about this project? I started developing a similar engine and also explicitly with view of making games that would integrate AI for stuff like dialogue, illustrations and so on. I'm too lazy to work on it though so I'm glad that other people are doing it, because there's tons of potential there no doubt
>Is there an existing engine that can run on potatoes and runs on multiple platforms?
using a game engine for this doesn't really make sense. just use HTML+JS. it's the best solution for UIs, it's future-proof and will be supported on pretty much every platform that lets you browse the internet.
my prototype uses Electron and TS for the engine and JS for the game scripts
>>
File: pardonmenigger.png (96 KB, 679x541)
96 KB
96 KB PNG
>>101504683
>using a game engine for this doesn't really make sense. just use HTML+JS

erm... anon? he asked for it to run on a potato. idk if you're just some richfag who always had big fast computers but javascript-heavy websites are a middle finger to slow computers
>>
>>101504720
only if they're poorly made, otherwise it's fine
>>
>>101480948
looks like the sand has a biased towards the left. Maybe check left and right randomly?
>>
Pardon my nigger question, but what's the cleanest way to set a makefile so that it chooses how to compile depending on running OS?
>>
File: flags.png (17 KB, 326x347)
17 KB
17 KB PNG
>>101504013
If anything, Minecraft is the best counterexample.
Game runs 100+ FPS with hundreds of buggy memory-leak ridden mods, and the only reason FPS isn't even higher is tricky rendering of Create contraptions.
GC is never noticeable.
Not sure if any of this responsible for such success.
>>
>>101504896
Minecraft runs like absolute shit for what it does
>>
>>101504911
Not really? Do you know shit like RAII is actually slower?
I mean, it's faster to allocate memory and not clean it than to constantly do cleanup as soon as possible.
The problem is work to clean it up sums up and you get lag spike when GC hits. The thing is, it doesn't anymore. Not in Minecraft.
>>
>>101504894
i think something like
uname := $(shell uname)
ifeq ($(uname), Linux)
CC=gcc
endif


but idk if uname is a thing on windows maybe you would have to do something special if you care about windows
>>
>>101504950
>Not really?
Yes really
>Do you know shit like RAII is actually slower?
That's both wrong and has nothing to do with it
>>
File: fact.jpg (888 KB, 4444x4264)
888 KB
888 KB JPG
raii is literally the antichrist whether it's slower or faster than garbage collection
>>
>>101505049
>That's both wrong and has nothing to do with it
Not that anon, but it is, it was already proved. And next thread I'll prove it again.
>>
>>101504896
Maybe things have improved a bit in the latest releases, the post is now 10 years old. You can work with GC, but you shouldn't get overly confident.
>>
>>101505161
You can't prove it because they're not equivalent
>>
>>101505198
They are not the same, RAII is inferior and slower.
>>
>>101505208
RAII is not garbage collection you fucking moron

Someone post some games and save this thread from the idiots
>>
>even big studio devs cannot fathom that asking system for memory is super slow, deallocating it is even slower
80% of modern game issues can be solved by literally compressing data layouts and minimizing allocations in hot loops and every frame.
by using smaller memory the CPU and cache can literally handle every retarded shit you throw at it just by sheer brute force. games used to allocate everything on the stack, or at least preallocate the maximum entity numbers and throw them in arrays. how the fuck are we struggling on solved issues? for fucks sake literally every game has a particle system and it literally use the exact same concepts like holy shit it's not even obscure.
>>
>>101505558
Mojang is not a big studio
>>
>>101505558
story of the first time i saw this first hand (GPU instead of CPU but similar situation)
>be junior graphics programmer
>working on integrating new SSAO technique
>it's running slower than i expected
>don't really understand what i'm looking at in the profiler at the time
>ask senior about it, show him the profile capture
>he says "ah you're using a 32 bit texture, change it to 16 bit"
>do that
>4x speed increase

it's like, i thought my bottleneck would be doing too much maths in the shader or not tuning my compute work group counts properly or something else complicated. but no, my bottleneck was just fetching texture data
>>
>>101505558
>I am some retard on /g/, I have solved video games, let me pull some "facts" out of my ass
let's see you solve O(n^2) operations by brute force
>>
>>101505578
>situation was better pre 1.3 aka when mojang was in charge
>the game shits the bed immediately when microsoft takes control
my point stands
>>
>>101505611
The same people still work there, Mojang was and is a small incompetent indie studio
>>
I'll bite the bullet. OpenGL or Vulkan or the hot new wgpu. Give me pros and cons of each.
>>
>>101505662
Vulkan is more fun.
>>
>>101478733
Being an artist in the era of AI is a massive cope.
>>
>>101505679
>Vulkan is more fun.
okay, that already sounds fun. what about shaders, similar to opengl or not?
>>
>>101505662
opengl pros:
>you can get a basic scene rendering with simple lighting stuff in like a day if you're committed.
>good enough for literally any indie game in terms of performance etc
>you won't spend too much time on stupid small issues
opengl cons:
>no shader debugging (as far as im aware of)
>no pre compiled shaders unless you use opengl 4.6
>the state machine system can be a bit messy

vulkan pros:
>shader debugging (as in, you can literally put breakpoints and step through your shaders)
>manages state through objects which makes things a bit cleaner once you have a basic framework up and going, and also can be more performant since you don't have to rebuild state between draws etc.
>shaders compile to SPIR-V so you can pick and choose your shader language (not stuck to GLSL like in OpenGL)
vulkan cons:
>it might take you weeks to get a basic scene going
>for what you're realistically going to be making you're probably not going to need the extra manual sync and memory features
>you might spend a lot of hours on stupid memory and sync problems

idk anything about wgpu other than it seems like tranny shit and it also doesn't have precompiled shaders
>>
>>101505723
Vulkan uses SPIR-V, which you'd typically compile ahead-of-time from GLSL, rather than just taking GLSL directly. Vulkan GLSL is basically the same thing as regular GLSL, with some minor changes adding Vulkan stuff (e.g. descriptor sets) and removing some others (e.g. a few in-built variables).
You could actually generate SPIR-V from HLSL (DirectX's shader language) or other stuff if you really felt inclined to.
>>
>>101504894
>cleanest way
by generating the makefile from cmake
>>
I deliberately optimize my code such that it optimally thrashes the cpu cache in seemingly non-obvious ways.
>>
>>101505745
>>101505778
Okay, I know basic opengl but never really did 3D with it. I'll pick vulkan and see how far I can get.
I want to get a moving camera over a cube on the screen. That'd be my "rainbow triangle" so to speak.
>>
>>101503182
Yeah nobody's ever written a roguelike with just structs and functions before...
>>
>>101504389
Check the indices aren’t actually 32 bits
Make sure your assuming the right primitive type
If there’s a primitive list with vertex and index offsets make sure your interpreting it correctly
Try inspecting the geometry buffers and draw commands in renderdoc to see how the values are being interpreted
>>
>>101476972
>>101477080
>Valve is not a triple-A game development company
correct! valve is a double-A game company
>>
>>101506127
this is likely the data, does this look correct? >>101504619
>>
>>101506110
Literally everything is structs and functions, in the same way everything is atoms
Being reductive doesn't help you solve your architecture problems
>>
>>101506145
they're AAA
>>
Valve is an S tier company if you look at their revenue
>>
>>101506304
nigga, they sit in between indie devs and triple As. they're double A
>>
>>101506418
Their production budgets can be as high as they want to
>>
>>101506450
so?
>>
>>101506483
So their first-person games are AAA
>>
>>101504013
The JVM would have stack-allocated BlockPos except some idiot Mojangsister added a mutable subclass.
>>
>>101506323
if you look at the revenue divided by employee count its unbeatable triple S tier
>>
>>101500980
I don't have the expertise required to to build my own engine.
>>101504683
>where can I read about this project?
You can't, I've heard about it on /vg/'s /aicg/ and tried to contact the guy but he hasn't replied yet.
>just use HTML+JS
>Electron and TS
I'd REALLY rather not.
>>
File: IvyMen_dkHZmFR6eg.webm (3.39 MB, 1008x728)
3.39 MB
3.39 MB WEBM
Look a real game loop
>>
>>101507089
whats with the retarded auto lean?
>>
>>101506216
Your example looks correct. Generally devs are going to use either 16bit or 32bit indices depending on how many polygons there are and if splitting up the mesh is practical or not.
>>
>>101507089
add a 0.01% chance for the enemies to do the geddan dance instead of flipping left and right when hit
>>
>>101507089
nice death animation
>>
>>101507164
Reminds me of half-life alpha
>>
>>101507442
>>101507442
>>101507442
I waited a while before baking a bread.

>>101504950
>>Do you know shit like RAII is actually slower?
>iadd $10 is slower than iadd $1b
>>
>>101505234
Yes they are. RAII is garbage collection.
>>
>>101506778
Would it? I suppose it depends on how it is used. Where can I read more about jvm optimizations?



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