[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: quaternion.png (388 KB, 750x600)
388 KB
388 KB PNG
Never Gonna Give You Up Edition

/gedg/ Compendium: rentry.org/gedg
/gedg/ Wiki: wiki.installgentoo.com/wiki/Gedg
IRC: irc.rizon.net #/g/gedg
Progress Day: rentry.org/gedg-jams
/agdg/: >>>/vg/agdg
Render bugs: renderdoc

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:
>>102344325
>>
File: snek.webm (41 KB, 750x750)
41 KB
41 KB WEBM
Snake is a classic mobile game where the playable character must feed and sneed.
>>
I’m making an online browser based competitive multiplayer game. I’ve already written the backend and it works well, almost done with matchmaking and will do the rendering engine next.

Any anons that have done something like this before, are there any pitfalls I should know about?
>>
>>102421741
Sounds neat. I've only dabbled in webgl. My approach would be to fork:
https://github.khronos.org/glTF-Sample-Viewer-Release/
To use as a renderer.
>>
>>102421825
I’m doing it in 2D, it will be isometric. I also want to do everything myself without libraries so I can learn and get better.

The game will have 100% server authority but could people still find ways to cheat?
>>
Usually when it comes to 2d engines, what method should I use to handle rendering overlaps/depths?
>>
>>102422200
Depends on what you're drawing really
Some things might want to be sorted, like isometric or 3/4 view games
Some things you might want to draw them hierarchically, like a GUI
Many 2D games use layers
>>
What if it is handled like 3d? With Z buffers.
>>
>>102422390
>>102422369
I forgot to reply
>>
>>102422390
you can do that
>>
File: Handedness.png (532 KB, 2279x3065)
532 KB
532 KB PNG
>>102421413
For all the 3Dlets out there
>>
got my coffee
got my jblow
it's devving time

good morning /gedg/
>>
>>102423603
That guy is demotivational material
>>
>>102421413
Is there any resources of applications of common math formulas, matrices, quaternions etc. and other gamedev techniques?
>>
who's the retard that thought that using +Y as the up axis was a great idea? He was clearly retarded.
>>
>>102424000
seconding this
>>
>>102424000
yes
>>
>>102423603
Never understood wtf /g/ sees in this man
>>
>>102424379
he's our lolcow. the glowies took terry from us so we needed a new one.
>>
>>102424653
He has some points I agree with, screen space effects being dogshit for instance.
>>
>>102424040
This but unironically
>>
Any recommendation for a good framework which supports dx12 or vulkan? All I want is to test some algos from some scientific papers in rendering.
>>
>>102424040
Retard alert
>>
How much should I be charging for a single low poly character model? 120? 240?
>>
>>102421852
If the game is real time, there's client-side input automation (bots, macros, whatever you wanna call it). If it's turn-based, there could be some solvers or bots (see tic-tac-toe or chess), but they become less viable the more complicated the game is, and might not be useful at all if enough of the game's state is hidden from the players.
100% server authority is really the best you can do, people will always find ways to cheat in your game and you shouldn't worry about it too much.
>>
>>102421478
Cool, what did you use?
>>
>>102425421
Yea no shit. Everyone who isn't blind can see it flaws.
>>
>>102427485
Yeah, as long as I can turn it off in a config or the menu I don't give a shit (unless it's tied to a gameplay mechanic, in which case fuck that dev)
More graphics slop for the normies that can't see TAA, Upscaling or frame interpolation
>>
>>102426499
every low poly model I have ever seen was free.
but if it's a furry model for vrchat, I think maybe 100+ since they tend to be oilers.
>>
>>102426499
I'll give you 3.50$ for it.
Take it or leave it.
>>
>>102427767
Synty charges gorillions
>>
>>102428063
Everyone pirates it
>>
>>102421852
Cheaters are players. How many players does your game have?
>>
>>102424000
The axis of rotation for a cameras pitch is the cross product of the cameras direction vector and the up vector. This pitch axis is a vector perpendicular to the direction, and up vectors.
>>
File: stj5cenozf.webm (3.89 MB, 878x654)
3.89 MB
3.89 MB WEBM
>>102421413
got some nice specular reflections, point ights, attenuation, pbr materials
I'm honestly surprised at how decent it looks
>>
File: progress.png (270 KB, 1027x1103)
270 KB
270 KB PNG
Added another brick, worked on camera movement, and tweaked lightning a little.
>>
>>102429519
does your UI support scaling, or is it just pixel based?
>>
>>102428190
not true, they have built-in drm since they use maya, notice how none of the recent packs are on pirate sites.
>>
File: scaling.png (196 KB, 793x953)
196 KB
196 KB PNG
>>102429614
Vertically and horizontally. It is rendered based on pixels, but there is an underlying 'tile' that the user can configure.
>>
File: 1725250075493260.png (192 KB, 474x360)
192 KB
192 KB PNG
>>102429066
looking good anon
>>102429748
very nice, Im currently working on my UI, not enjoying it
>>
>>102421413
If you guys have any repos you want to share reply to me so I can add them to the compendium.

They can be your own repos too, doesn't matter. I want to make sure /gedg/ is a community that helps each other with their projects whenever its reasonable to do so.
>>
>>102424000
yes
>>
>>102421413
imagine if there was a /g/ daycare and we all played twist together. (no homo)

So imagine Luke Smith, Distro Tube and Kenny and Stallman on a twister Mat playing twister together.
>>
File: file.png (405 KB, 1869x896)
405 KB
405 KB PNG
so this is the power of unity devs
>>
I'm not sure how to structure uniform buffers. Currently I have this:
layout(location = 1) uniform mat4 u_screen_projection;
layout(binding = 0) uniform Camera {
mat4 projection;
mat4 view;
mat4 view_projection;
} u_camera;

I want to add screen projection to a uniform buffer but I don't know what to call it what it should contain, and I don't want to add it to the camera block because it's not really related to the current camera.
>>
>>102434100
>projection
>view
>view_projection

If your projection uses the reverse-z convention it's fine to just compute view-projection in the shader without precision issues. If you aren't using reverse-z, consider doing it if you need to have the camera look far away. Now back on topic. You can just reuse the projection member of your camera uniform for your screen projection. You say you don't want to but your reasoning doesn't track for me.
Lets say you really don't want to do that though, then I see no problem with your code and I'm unsure about your confusion. My only question looking at the code is why both uniforms are showing up in your shader.

Also since you seem new to shaders, I'd like to make sure that you know (location = 1) is shorthand for (location = 1, binding = 0) and (binding = 0) is shorthand for (location = 0, binding = 0). Basically, if its omitted, zero is assumed.
>>
Been working on this space game. Not sure what it'll end up being. Started out wanting to learn opengl, and then decided to learn collisions so the rendering never really got far. It's pretty fun flying around crashing into stuff.
>>
>>102434580
>It's pretty fun flying around crashing into stuff
turn it into a space mining game where the ship is a giant drill and you build momentum for maximum impact.
>>
>>102434857
Destructible stuff is definitely something I'd like to try
>>
>>102421413
Came up with a random mechanic

>every province has Population (integer) and Able Men (integer)
>Population generates tax revenue
>Population also generates "Able Men"
>Ablemen, represent second sons, an expandable population
>Able Men generate bonuses on production and cheapen infrastructure cost
>Able Men also determine Population growth rate
>when the army is recruited in the province, Able Men are reduced
>>
>>102436839
and what game is the mechanic for?
>>
File: unit.webm (824 KB, 928x529)
824 KB
824 KB WEBM
>>102437773
A grand strategy
>>
>>102436839
>mechanic
*mechanism
>>
>>102434560
Thanks. You made me realize how retarded I was.
>>
File: output.webm (3.36 MB, 1280x720)
3.36 MB
3.36 MB WEBM
Made that objects can be rotated from any point.

>>102431573
https://github.com/Pariatech/odin-urban-tycoons

>>102429519
Nice looking semaphor!
>>
>>102421413
Making a top-down narrative game. What's the better approach between these two:
>make models in Blender, then turn them into 2D sprite-sheets
>make models in Blender, then put them directly in the game and use some shaders to give them a pixelated look

For now I've been using the first method, but since I'm going to have a lot of different animations (especially among characters, like a character grabbing another), it might be better to switch everything to the second method. Maybe?
>>
>>102436839
isn't that just manpower?

>>102438075
nice to see your grand strategy in action
>>
>>102439084
>isn't that just manpower?
No, it's intended to be much more.
Firstly, it's province-based rather than global
Secondly, Able Men grants benefits and determine the population growth rate, therefore taking all able men for your army will damage your population growth

>nice to see your grand strategy in action
Well, there is not much there, not even gameplay just AI tests
>>
>>102439152
Your able men have an impact on the population growth but they're not the only driver in it. Don't forget the "first sons".
But I can understand if there's a flat population rate increase which scale with population size and then you apply a bonus based on your amount of able men (manpower). but that's considering that there's one female for each of your able man.

Maybe go with keeping track of your population age/sex distribution.
>>
>>102434580
You have so little and already it looks fun. Since most everything is an oriented bounding box with random orientations, for your broad pass it might be better to use spheres rather than axis-aligned bounding boxes. GJK's the next step for collisions I suppose.
>>
>check out my old blog
>last progress posted : october 2017
grim
>>
>>102440753
dreadful
>>
>>102440753
>try to find old blog
>cant find it because deliberately cryptic and hard to remember username, "show in search results" set to off, no hashtags, and usually long winded, hard to remember phrasing in posts

at least it properly fit what I was going for in a blog, an online journal that can only be found by me, with zero followers, to save space on my computer
>>
>>102440753
I killed my blog because it was just dead.
>>
File: file.png (849 KB, 1920x986)
849 KB
849 KB PNG
Guys, I have a character from an old game I made 2 years ago when I was still using Unity. Since then, I transitioned to Unreal. I'm thinking of doing a remaster of the original and would like to have that original character use the UE5's Mannequin skeleton. From my understanding (not an artist), adding new bones would mean the bone weights need to be redone, correct? In that case I might opt to hire someone who knows 3D to handle that since I'm just a programmer. How much do you think it would cost?
>>
>>102439054
>https://github.com/Pariatech/odin-urban-tycoons
Kinda want to try it but also not sure if I can trust it.
>>
>>102441227
I had a blog name so generic I couldn't find it for weeks, yet somehow I remembered the exact name today. It's funny how my thought process of the name didn't change 7 years later.
>>
>>102441431
mine's unfortunately something like 346SEG34gwar456-only-identifiable-word-56wer32GSDFSHs2

or something, hosted on tumblr, so whatever the character limit for usernames is, the only way I remember it is a notebook where I wrote "##CC##-user-CC##CC"
thanks, fucking asshole past me
>>
>>102441385
read the code if you don't trust it.
>>
>>102439271
I'm not sure what would be the point of keeping track of women.
Historically, only a fraction population was recruited into the army, so gender imbalance wasn't meaningful until the Great War
>>
>>102441618
>so gender imbalance wasn't meaningful until the Great War
weren't female newborns mostly killed anyway? as morbid as it sounds, it might've been what stabilized the male to female ratio for so long until wars fucked everything.
>>
>>102441681
that's probably true
>>
>>102441681
>weren't female newborns mostly killed anyway
Not really. Maybe now-and-then but not at scale, marriage was still useful back then.
>>
>>102439077
try option 2, if it doesnt pan out in a reasonable amount of time/looks then try to automate option 1
>>
>>102441618
women are the bottleneck in human reproduction.
>>
>>102423603
JB being productive.
>>
File: 2024-09-18_18-54.png (895 KB, 924x716)
895 KB
895 KB PNG
>Started the project in Unity, migrated to Godot after Unity's license disaster and now migrated to Flax after realizing Godot is just not meant for my type of game.
Bwahahahaha, godot was beat by an engine "with no releases because it sucks".
>>
>>102442194
Are they? my grandparents had over 12 children, more than half of that number were miscarriages. A healthy woman can give birth on repeat as soon as she can get pregnant again. I would've posted that tiktok video where the girl gets pregnant every single year without missing a beat.
So in peaceful times with enough resources and food, the population can grow exponentially in a single generation, it helps that newborns have a higher chance of being females too. Most families around me have either all girls or a high ratio of girls to boys.
I guess that depends on the culture and the location, but everybody knows immigrants create a population explosion wherever they go for a reason.
>>
>>102442479
>can only produce a child every 9 months
>can only produce children from ~12yo to ~40yo
>meanwhile a man can get a new woman pregnant each day
>>
>>102442328
Settlers 3 was a great game.
>>
>>102442720
good thing men can multithread
>>
>>102442762
Right which is why women are the bottleneck
>>
I'll make women are ressource in my game. And you will be able to launch raids on neighbouring regions for it.
>>
>>102442791
no, because there's plenty of them already, and it's still great production value to have 10 kids in the span of 10 years with one woman. you don't really need to have all your kids be in the same age as long as you're still young enough that by the time they reach adulthood you're still healthy and capable.

>>102442913
I want to run a poison build by using them to spread STDs.
>>
>>102442998
>no
You have ten women, They typically have one kid at a time with <2% at twins. How many kids born in one year?
>>
>>102442998
>I want to run a poison build by using them to spread STDs.
you will need the hot chip and contraceptive resources for that.
>>
File: urban-tycoons.jpg (614 KB, 1280x720)
614 KB
614 KB JPG
>>102439054
Nice work. I don't know much about Odin. The UI icons aren't visible on my Linux machine. But I still managed to build a little white box. You have loads of neat features and polish in this game.
>>
>>102443207
Thanks for trying the game out!
>No UI
what's your DE, screen resolution, also is it a high DPI screen?

I have to rework the UI system, it's hacky and flaky.
>>
Is there some specific way you're supposed to compile shaders when you're using shader objects? I'm getting "End of input reached while decoding OpLoad starting at word 743: missing result ID operand at word offset 2. The Vulkan spec states: If codeType is VK_SHADER_CODE_TYPE_SPIRV_EXT, pCode must adhere to the validation rules described by the Validation Rules within a Module section of the SPIR-V Environment appendix" from the validation layer.
>>
>>102442328
>this engine is not meant for my game
>that means it's bad
Wrong
>>
>>102442479
>I would've posted that tiktok video where the girl gets pregnant every single year without missing a beat.
based Mormons

>So in peaceful times with enough resources and food, the population can grow exponentially in a single generation
Btw, Roman population was very stagnant, there was actually fertility crisis under Augustus where he gave bunch rights to women with multiple children to encourage them breed.
Population didn't start to grow until the medieval period
>>
>>102444016
>using shader objects at all
gross
glsl is so fucking badly maintained, maybe it might require the opengl glsl extension for it
arb seperate shader objects or whatever
>>
File: file.png (2.09 MB, 1600x900)
2.09 MB
2.09 MB PNG
>>102439054
Pretty cool. Makes my puter hot doe.
>>
>>102444588
Nice hills back there!
In debug mode it run without vsync.
If you want to make a release executable with vsync, use
./scripts/build-[linux|windows]-release.sh && ./urban-tycoons
>>
>>102444737
Yeah runs much better now.
>>
Implementing audio shouldn't be hard right?
>>
>>102446637
famous last words
>>
>>102444294
>its a bad engine because it has no game releases
>godot aint bad because people are moving away from it
the dual retardedness of a godotbrain
>>
>>102447227
No one (but you) claimed flax is bad
>>
>>102426499
None. Stop being a commissionjew and help out your fellow NEETdevs.
>>
>>102447381
Sure I'll help out fellow neets if they help me out (with financial compensation)
>>
>>102447437
Enjoy the only commissions you get being suspiciously wealthy furries making you model disgusting shit faggot
>>
>>102447465
Okay stay poor
>>
>>102447480
You'll get paid when the game comes out and brings me above the poverty line tard
>>
>>102447514
With 50% yearly compounding interest I will give you one model.
>>
File: dw.png (251 KB, 499x373)
251 KB
251 KB PNG
>>102447551
I don't even know what that is, way to out yourself as a non-NEET!
>>
>>102447236
backpedaling so hard there bud, what happened to the cocky attitude from last thread huh? realized you were wrong KEK?
>>
>>102447648
NEET doesn't mean "retard" however so I think you're using the wrong term to describe yourself.
>>
>>102440712
I'm gonna try both approaches for the broad pass and see what works best. I did previously have a bounding sphere and octree approach, but that was with a much smaller scene of only 3 objects. Currently I'm doing an infinite hashed uniform grid and storing objects by AABB min corner. I'll go back to the octree at some point, or perhaps an hgrid, because I want to have objects of largely varying sizes.

Do I need GJK? I understand that it computes closest points between polyhedra, but I haven't run into a case where I needed that yet. I've been using support points and distance checks between edge vertices and that seems to cover everything for detection. I haven't tried collisions between arbitrary shapes however, only boxes and quads.
>>
>>102439054
I’d expect the big square tables to rotate without translating.
>>
>>102447800
>>102447227
>>102442328
damn you're one annoying motherfucker
>>
What use case is worth switching from OpenGL to Vulkan for?
>>
>>102441618
It depends mainly on what kind of economic situation you're in. Mass warfare is viable when you have a robust economy with a lot of social buy-in to the state. When times are bad, economically, you tend to see much smaller armies (and usually greater use of mercenaries) not because they can't be afforded but because people are much less willing to fight for a country that's not given them a good life. That's why army sizes declined drastically in the Middle Ages and didn't grow large again until towards the Renaissance. It's also why conscription was widespread in Rome, largely absent in medieval Europe, and then returned in the modern era. Conscription only works when there's at least some willingness to fight already, otherwise you just see mass desertions, defections, or killing of officers.

Rome was prosperous enough that they could find people willing to fight. People were very poor in the middle ages. Wealth began to increase in the modern era which meant people were willing to fight again, and the ever-increasing prosperity in the late 19th and early 20th centuries lead to massive numbers of men willing to die in some of the most horrific warfare in human history, because they felt they'd been given a fair deal by the state and owed something back to it. Now we're seeing recruitment numbers decline because people are poorer and don't see the state as being worth giving their life for.

If you're simulating an era with widespread poverty and an economy dominated by rent-seeking parasites then you should expect small army sizes and relatively large use of mercenaries, with population damage usually only occurring among civilian populations in war zones (due to famine, looting, murder, etc) rather than through battlefield casualties. If you're simulating an era with a robust middle class then you should expect massive armies and for battlefield casualties to be a significant part of population loss.
>>
>>102448298
realistically none
>>
>>102448298
If you have to ask, none. You can extract performance gains from Vulkan, but only if you actually know what you're doing, and if you're asking this question in the first place, this doesn't include you. It's just more PITA for you for no reason unless you want to learn.
>>
File: defold_logo.png (13 KB, 160x189)
13 KB
13 KB PNG
>>102442328
Cross-platform AND performant.
>>
>>102448397
>>102448433
Where are those performance gains and what does it mean to actually know what you're doing? I've read the Doom 2016 graphics study, but no one seems to be able to bring up specific cases.
>>
>>102448480
Vulkan is faster than OpenGL but you aren't making an AAA game so it probably doesn't matter
>>
>>102448480
Personally the main benefit I got from switching to Vulkan was that I was able to implement GPU-driven rendering a lot more easily than could have been done on OpenGL, if at all. This led to a substantial performance increase because I have a scene with a very large number of objects with relatively low vertex counts each. If you're dealing with fewer but more detailed objects in the vicinity of the camera I suspect GPU-driven rendering will yield less benefit.

I don't think I'd recommend Vulkan though unless you either really want a better understanding of how rendering works under the hood, or you REALLY need that extra performance, which you probably don't (I did need it).
>>
>>102448298
if you need or want to access any-semi new hardware features that have come out since 2013~ ish

one are where it's basically completely critical for gpu driven anything, especially procedural generation
geometry shaders don't actually work properly on anything but intel igpus, compute shaders are missing a load of features and guarantees (vulkan compute is so much further ahead it's not even funny, now that i think about it does opengl even have a way to do async compute?)
in the case of procgen it's not just the performance that's worse, in opengl GLSL it requires the same kind of insane workarounds people clown on rust for needing to do to make linked lists without unsafe
whereas vulkan has access to buffer device address (es?) which are just pointers in shaders

also opengl is just shit, stop being proud of being stupid

>>102448480
the fact that you'd even ask this means you don't even know how to multithread properly
hell i've sometimes considered using vulkan on non-graphics projects just for a robust portable implementation of timeline semaphores
and no, syncing over mapped memory isn't enough
>>
>>102448766
strong nodev energy from this post
>>
Wait so Froggy isn't the one making the urban tycoon game??
>>
>>102449125
Froggy only makes attention whoring posts
>>
File: output.webm (1.77 MB, 1920x1080)
1.77 MB
1.77 MB WEBM
>>102447917
Yeah you're right... It's clunky rotating the way it is now.
Sometime I need to remind myself that I'm taking inspiration and not making a remake...
>>
>>102429066
Is that a map segment from SCP:CB
>>
File: 1555277831535.png (168 KB, 1000x1000)
168 KB
168 KB PNG
>>102442328
>>102448471
Neither of those are free as in freedom
>>
>>102449249
Neither are vaccine mandates but that fat piece of shit was happy to support those.
>>
>>102449249
It's free as in free corn syrup which the goy in your pic would love
>>
>>102449294
>goy
Stallman is a jew.
>>
>>102449355
Ah so paid and closed source is what we should be using then.
>>
>>102449412
You should use something based on whether it's good or not you idelogically brainwashed moron
>>
>>102449429
But closed source software is generally (though not exclusively) better than free/open source software.
>>
>>102449453
Then you should use it
>>
Developing your own game engine is antisemitic. It deprives commercial engine developers of funding and it indicates an independent, fascist mindset. Do not develop your own game engine. Use an existing one.
>>
>>102449982
I'm developing even harder now.
>>
>>102447940
Go cry to your momma Juan. KEK
>>
>>102449125
Lol no

>>102449134
True.
>>
>>102450561
What are you working on then?
>>
>>102447882
By hgrid do you mean <https://sci-hub.ru/10.1109/cloud.2013.78>? Not familiar with this.
>it's a quad-tree into a 2D grid
Right.
Maybe you could use something like
BTreeMap<(
log4(radius), // log2 is probably too fine-grained
floor(center / 16),
signum(round(velocity)), // so that mostly-still objects don't move around in memory
pageNumber, // in case we have more than N objects in this place
), [GameObject; 4]>

>Do I need GJK?
Well if you want asteroids that aren't basic shapes then that's the usual approach IIUC.

>>102439054
Much more hands-on than using a key binding.
>I wonder if lasermice could be taught to read rotations

>>102439077
Going from 3D to pixel art that doesn't suck is a PhD-tier problem. (Albeit maybe some ML could do a sloppy job.) You would be better off doing something heavily stylized.
>>
>>102447465
oh god the humanity
>>
File: urban_tycoons.jpg (801 KB, 1280x720)
801 KB
801 KB JPG
>>102443449
This is neat. The icons became visible when I adjusted my global scale in KDE display settings.
I had global scale at 150% with a resolution of 2560x1600.
Adjusting scale to 100% and the UI came good.
>>
>>102451737
I get the graphics, but why not give it a good looking ui?
>>
>>102451786
I think the UI looks good. A visual pun on the word blueprint.
>>
As someone who is new to engine development, do people stick multiple vertices into 1 vertex buffer and let the indices do all the tricks?
>>
>>102451813
Not sure what you're asking. Whether or not you batch your meshes has nothing to do with whether you're doing indexed rendering or not.
>>
>>102451813
This is the way. A cube would seem to have 8 vertices if they are indexed. However, if your cube is textured differently on each face, you will end up with many more vertices. In this case multiple vertices with the same position will have different uv coords.
>>
>>102451941
>>102452238
How about something weirder. For example should a model of a cone, a cube and a sphere use the same vertex buffer and rendered via index. Once again I am new to these so my assumptions might be different than how it actually works.
>>
>>102452666
Why are you so obsessed with "rendered via index", that has nothing to do with whether or not they're stored in the same buffer. Yes, you can (and should) store the geometry of different models in the same vertex buffer. No, it doesn't matter whether they're indexed or not. And yes, if they are indexed, their indices should likewise be batched into one index buffer.
>>
>>102451941
>>102452666
It makes no significant difference whether you do this or not
>>
File: ooh.webm (189 KB, 480x270)
189 KB
189 KB WEBM
>>102452666
I'm no expert, but have learnt lots from /gedg/. I just rendered multiple objects, with multiple vertex buffers. I recommend a vertex buffer for each object as the vertices will then be transformed by some matrix. So if your cube and cone are in the same vertex buffer, you won't be able to easily move the cone without moving the cube.
>>
>>102453394
Just with your questions, indices relate to how vertices are grouped to make faces; if you have multiple meshes in the same vertex buffer then you’ll use either separate index buffers, or separate ranges within a shared index buffer.
>>
>>102452855
>obsessed with "rendered via index"
I think there is a slight misunderstanding. I'm just saying it but it is not a significant point of my question. My question is more towards handling multiple objects in the vertex buffer but,

>>102452855
>Yes, you can (and should) store the geometry of different models in the same vertex buffer
>>102453329
>I just rendered multiple objects, with multiple vertex buffers.

Are two very different replies.
>>
>>102451813
I use mutiple buffers, one for each attribute.
>>
>>102453474
Indices are an importsnt GPU optimisation.
Drawing a cube with indices only requires 8 vertices, and 36 indices (3 vertices, 2 triangles, 6 faces) without indices this cube requires a whopping 36 vertices.
Vertex buffers require a single copy from disk to GPU, then the vertices can be operated on with matrices.
>>
should i waste any time with construct engine, its free features are quite limited but it seems to be the easiest one to use
>>
>>102453713
If you plan to make a simple game (ie platformer) otherwise don't bother, it will bite you in the ass eventually
>>
>>102453713
No. But you should waste your time with GLFW + OpenGL
>>
>>102451338
>Going from 3D to pixel art that doesn't suck is a PhD-tier problem. (Albeit maybe some ML could do a sloppy job.) You would be better off doing something heavily stylized.
Thanks for the suggestion, it's also what I had in mind but I'm too in love with the models I've made. Losing detail and turning them into 8-bit generic sprites would kill my soul.

I think what I'm going to do is something like this
>animate run animation in blender
>turn it into a sprite sheet of like 15 frames for some smoothness
>drop it in aseprite
>pick like the 5 best frames and turn it into a 5-frame animation
>trace over them, essentially redrawing them from scratch

Might be a lot of work, especially for all the directions, but this might work nicely. Especially to add more specific animations because I can't 3D animate for shit (been using mixamo stock animations so far for prototyping)

If you want you can let me know what you think of this method. I'd love more suggestions
>>
>>102453713
What do you want to make?
>>
>>102453947
2d rts ala wc2
>>
>>102453959
probably a bad idea
>>
File: file.png (29 KB, 326x112)
29 KB
29 KB PNG
>>102451737
Not the other guy who mentioned the UI, but I will give you some UI advice: make the background panels have a darker color, something like pic related. It'll make the buttons stand out more, and make the whole thing look less cluttered
>>
>>102453959
Yeah nah, I say go with Godot
>>
>>102453329
>what is a model matrix
>>102453474
batching is a good optimization to do, less draw calls, less buffer copies. so yes, multiple objects (with the same material (pbr)) go in the same vertex buffer
>>
>>102453329
Anon you transform the vertices in the vertex shader for each object during rasterization, please do not store different vertex buffers for instances of the same mesh. And don't give out uninformed advice if you're still learning
>>
>>102453474
>My question is more towards handling multiple objects in the vertex buffer but,
Ok, focus on that then. Yes, you should do it. Anon here >>102453329 doesn't because he's still learning (his claim that you can't move the one object without moving the other is wrong; your matrix transform will only be applied to the vertices of that one object, not other vertices in the buffer).
>>
>>102453982
seems like it doesnt have visual scripting
im no coder so thats the only way ill able to do anything
>>
>>102454067
You're not making a WC2-like game without coding. Bite the bullet and learn it.
Godot uses a simplified version of Python which is already simple enough in itself.

>how do I learn coding?
DON'T watch hour longs tutorials of tons of irrelevant shit you don't even want to do. Just learn the very basics: what's a variable and how it's used, what's a function, that sort of thing.
>>
>>102454067
>nocoder
>2d warcraft 2 style RTS
one nanosecond of googling revealed to me that there's already an engine literally designed for making 2d warcraft clones
https://github.com/Wargus/stratagus
might want to try that first
>>
>>102451338
>>102453919
Actually I think I fucking got it:
>make stickman-like 3D model, essentially just a skeleton
>animate it from all sides
>use it as reference and draw over it

It's a long process, but it'll ensure that
1. The characters look exactly the way I want them to look
2. No mixels and other 3D-to-2D artifacts
3. It may take a long time, but it IS scalable into more animations like body-language when talking because I can draw those instead of fiddling with the godawful blender animation interface

I'll go with this for the time being and post how it went
>>
>>102451737
Ok so it's a window scaling issue. I'll log the issue and try it out in a vm.

>>102451786
cuz it was a rushed job before a previous /agdg/ demoday. The idea was that it was better to have a bad UI than no UI.
The UI needs to be redone, but for now, it's not high priority.

>>102453980
Will do, thank you.
>>
>>102451798
It's low res, that alone makes it ugly.
>>
>>102450641
Currently a text adventure game. Still deciding on the specifics of different things.

>>102452666
No they shouldn't. Unless you are doing some morphing and using dynamic buffers. If you transform an object linearly or scale it, you'll want to reuse the vertex and index buffers.
>>
>>102421413
What's the most reliable way distribute Linux binaries on itch.io. I can only think of appimage where everything is compiled against oldish glibc.
>>
>>102455592
Probably just distribute game binary + .so's + a shell script that just does LD_PRELOAD=libdir/ exec ./game
>>
>>102451813
Usually you'll be able to offset the buffer as well as use indexes, so you could in theory stick everything in a single buffer. Depending on your API and usage case though you will likely find it beneficial to use more than 1 buffer. It becomes a bit more obvious when to make that kind of call after your 10th failed game project.
>>
>>102455592
Have two binaries, one for X11 and one for Wayland?
>>
>>102455592
Personally I static linked everything. That require me to compile glfw.
but might try >>102455624
>>
>>102455592
Back in the day we just used a startup script which set LD_LIBRARY_PATH and shipped system independent libs. No need to statically link anything.
>>
>>102455624
An appimage is basically this but packed into one file (more normie-friendly).
>>102455654
Well my game uses SDL2, ideally I would like user to be able to select this with SDL_VIDEODRIVER but at the same time the gmae should run on xorg system without wayland libs and on wayland system without xorg libs. I know it is easier to do in SDL3 since it loads it does not link with anything, for SDL2 I would probably need to ship all X and wayland deps.

Glibc looks to me as most annoying dep since I can't even compile the older version that older distros use on my system, so I would probably need to compile everything on debian stable vm against 3.26 version for my program to be able to run in most distros. It would be great to just ship it but I never seen anybody do this.

Here's an ldd of my game https://pst.moe/paste/dgnont which libs do you think should be left out? I should probably compile sdl with only necessary deps.
>>
>>102449204
nice catch!
I was originally using scp cb assets but eventually realised it was infinitely better if i did everything myself, so this is just a lookalike
>>
Nintendo is really trying to patent concepts like "walking". What does this mean for us?
>>
>>102456283
Nothing? They have been trying it for decades
>>
>>102456283
Just make it so your character wanks instead of walks. That way you won't violate the patent since it will no longer match all the claims.
>>
>>102456351
But they are suing Pocketpair.

>>102456360
Hmmm
>>
>>102456283
>Nintendo suing everyone about everything
nothing new
>>
>>102456372
And? jews sue and lose all the time. They won't win "walking" but will likely win if they pivot to saying they stole their pokemon designs (which they did)
>>
>>102456372
meh it's a frivolous lawsuit. palworld is different enough to clearly not be pokemon.
>>
>>102454045
This is a memory alignment nightmare, and when you try to instance your objects you have a repeat of every object in the vertex buffer.
>>
File: PixelDude.gif (18 KB, 347x236)
18 KB
18 KB GIF
The game is top-down, seen from afar (AKA small characters) because I tried a more zoomed-in approach and it's very disorienting with all the buildings. Feels claustrophobic. So yeah this is the height.

The ground is obviously a placeholder, but the model is... maybe presentable?
What do you think? Am I still at the prototype stage with the character or is he fine like this?
>>
>>102456283
Yeah, well, Kojima invented cameras so nintendo can suck it on that one
>>
File: cock_engine.png (216 KB, 1918x1075)
216 KB
216 KB PNG
>>
>>102457344
wow, that's pretty cool
keep it up friend
>>
>>102457344
what a cocky dood up to no good.
>>
>>102457267
Looks good, at least if thats a mob. If its the MC you'd want to go and fix the jitter in the pixels by hand if needed.
>>
>>102457816
Oh yeah I'll go and fix the little issues by myself soon, just wanted to know if it's worth the trouble or if I should change style completely.
I'm liking it though. I think I'll sleep on it, see if I still like it tomorrow
>>
>>102457344
Looks really nice, similar to the level editor I'm making.
>>
File: axed_box.png (283 KB, 1026x1183)
283 KB
283 KB PNG
Polished the box, added an ability to edit numeric up-down boxes directly and...
>>
>>102460290
... added an ability to hide the guide box to better show the complete model. My plan for the weekend is to make an offline renderer to be able to mass produce sprites for games such as OTTD, OpenRCT or SimuTrans. if that works out, I'll have people stress test my code and get some feedback. Once that's done - its game devin time.
>>
File: no_box.png (182 KB, 946x924)
182 KB
182 KB PNG
>>102460308
Of course, I forgot the image.
>>
>>102460319
nice so you made the editor for creating sprites and also to use for your future game, cool!
>>
File: 342.png (3.25 MB, 1919x1079)
3.25 MB
3.25 MB PNG
I'm looking for good framework to prototype quickly some rendering algo from SIGGRAPH.
>>
>>102457344
saw you post in /agdg/ you didnt like your UI, whats the stack?
>>
>>102448298
Compute shaders for a GPU driven rendering engine.
>>
>>102462824
You can use compute shaders with opengl no?
>>
>>102462855
Oh I guess you're right. For some reason I haven't looked into it in a while and didn't realize they had them.
>>
>>102462931
Older GL versions and GLES don't support them, might be why?
>>
>>102461919
Nothing exists which is fit for that purpose, having tried a million things. I usually use Unity for prototyping, and sometimes
https://compute.toys/
with the downside of WGSL. Lots of graphics programmers roll their own.
>>
>>102461919
Blender.
>>
I understand this is probably a naive question, but how feasible would it be to use Unreal Engine to create a voxel game? Sort of a mixture of Minecraft and Dwarf Fortress. Not gonna pay $400 for Voxel Plugin, so I'd have to do it all myself. From what I've seen and read, it might be more efficient to use a custom engine, but I've never enginedevved before and I'm already familiar with Unreal. Obviously I'd be using C++ for this.
>>
>>102465194
im pretty sure there is a youtuber that goes by tooley something that made a voxel engine in unreal
>>
>>102465194
Definitely more efficient to make your own engine but still doable in Unreal. The biggest challenge is that it sounds like you don't have that much gamedev experience, and all the unreal tutorials (unless you can find something voxel-specific) will lead you down the wrong path. For instance, you do NOT want to make every voxel an Actor (or even Object); at a minimum, the chunk itself would be the smallest Actor. I've never made a voxel engine before but that's just something that's immediately apparent.
>>
>>102462406
When you ask whats the stack, do you mean what library am I using? I am using Raylib and ODE
>>
>>102466723
Based, I'm also using Raylib with ODE. Don't think I'll be using ODE in my level editor though.
>>
>>102466886
Sick, can I see?
Also what do you mean you wont use it in the level editor?
>>
>>102466892
It's broken rn but I'll try to post it this weekend when I'm done with work. Still pretty early in development.
>Also what do you mean you wont use it in the level editor?
The level editor I'm making is only for making levels (trying to make it work with CSG/brush operations), don't have any need for physics outside the game. What are you using ODE for?
>>
File: jeep.webm (3.79 MB, 1914x1076)
3.79 MB
3.79 MB WEBM
>>102466932
I am using ODE for vehicle physics, my characters use their own physics that I wrote.
>>
>>102466984
Ooh very cool! So your editor is actually integrated with the game? Is the main reason for integration productivity or is it one of those games where players can create levels too?
In my case it's separate, but I considered integrating it for a while. Ultimately decided not to cause I didn't want to deal with game state + I'm using a language with runtime compilation so it's trivial to reload.
>my characters use their own physics that I wrote
You don't use ODE for character collision?
>>
>>102467031
Thanks mate :)
Yeah mine is all integrated, if I want someone to play it I just switch a bool from false to true, and then they have no access to all the gui and just get the map/level that I have already set up.
>>
File: file.png (96 KB, 862x1215)
96 KB
96 KB PNG
>>102454084
>>102454118
i dont know how you will feel about but i decided to use unity with chatgpt
its pretty awesome
>>
File: file.png (91 KB, 812x1144)
91 KB
91 KB PNG
>>102467208
>>
File: file.png (186 KB, 2055x1440)
186 KB
186 KB PNG
>>102467217
>>
what does it mean if my computer screens turn off and then the computer fans go really hard and loud until I turn the computer off with the power button?
>>
>>102467208
>unity
>its pretty awesome
lol
>>
>>102467208
>>102467217
>>102467231
Get out.
>>
File: file.png (1.27 MB, 2121x1174)
1.27 MB
1.27 MB PNG
>>102468391
im an artist
i hate programming and how nothing fucking works 80% of the time and if i can simplify this shit as much as possible i will in an instant
>>
File: monkey.jpg (275 KB, 1647x551)
275 KB
275 KB JPG
>>102469325
I'll write some code for your art, I'm an expert.
>>
>>102469426
just testing it rn
got inspired by this dumbass https://www.twitch.tv/videos/2254260379?t=06h37m41s
if he can make something resembling a game - anyone can.
>>
>>102469325
There are no shortcuts when it comes to programming.
>nothing fucking works 80% of the time
It's a dumb machine, all it does is follow your instructions. If something isn't working it's most likely you failed to give it the correct instructions.
>>
>>102469325
I do the same but for art
>>
everyone here is too pussy to make their own engine with zero libraries besides vulkan and x11

and the ones that arent too pussy will immediately use horrific coding style, cpp, meson/ninja/cmake etc aka things that should never have existed
>>
>>102469948
be the change you want to see. show us your big guy engine.
>>
>>102469948
>x11
>Complains about Meson
Idiot.
>>
>>102469956
no i keep it all to myself because then other people on the internet cant intrude on my intensely personal and beautiful relationship with it

however i openly share anything i know. whats on your mind? most of the cool things ive done involve memory pools, multiple render threads, bytecode injection for badly behaving devices, sane code organization and tools rather than hideous nesting and IDE driven development. i'm now working on higher level things like procedural textures and shadows/culling
>>
>>102469981
why are you using other people's software to hide avoid learning what the computer actually needs to hear to do the thing you need it to do?

my delusion knows no bounds, one day i will write my own ISA, OS, c compiler, and so on. there is no reason to trust anyone and the assumptions they've made in handing their software to you
>>
>>102469831
i dont have a problem with that, for me its easier and more enjoyable to do everything myself than to overpaint something someone else made
>>102469783
well it wrote the code which works and which i wouldnt be able to do with my current knowledge, lets see how far i can go with this.
>>
>>102469325
oh don't worry you've only got the entirety of human history before you to simplify, shouldn't be too hard
>>
>>102470010
you sound like a larper
>>
>>102470034
I was merely pointing out that X11 uses Meson as its build system (and its quite a nice build system at that),
But yes, you definitely get those schizo "registry dumper" faggot vibes from your posts.
>>
>>102470107
>>102470125
ok, so for x11 specifically, simply i just have to have the header file installed on my system and then i just include and link. we sadly have to deal with the bullshit we are dealt sometimes, but whatever way x11 is created is thankfully of no concern to me and i only have to have 200 lines of boilerplate to associate vulkan with a properly configured x11 surface. my code compiles in one line and doesn't need any meson or ninja bullshit

now, for your other comments, once again, this has nothing to do with security or being a schizo but rather desiring to have complete control where needed and sane defaults and abstractions where not. once again, i can compile my 20,000 lines of c99 vulkan with A ONE LINER GCC COMMAND, why would i need make/cmake/meson/ninja and so on? why would i need assimp, why would i need a whole ass game engine and scene graph that actively make your life worse by hiding exactly what the computer needs to hear from you?

it is behavior like that that has caused modern day "software engineers" to not even understand the physical implications of malloc. they think they can just simply add and remove objects from a scene as needed
>>
>>102470226
>why would i need assimp, why would i need a whole ass game engine and scene graph
saves you years of work
>>
>>102470226
>it is behavior like that that has caused modern day "software engineers" to not even understand the physical implications of malloc. they think they can just simply add and remove objects from a scene as needed
They can simply add and remove objects from a scene as needed, this is how every video game you've played works
You are a larper
>>
>>102470254
oh ok so at least you just admit that you aren't intelligent

imagine thinking you need a gltf parser, png parser, and a thing to add/remove objects in a scene

in reality you need absolutely, and i really seriously mean, none of these things to make compelling 3d applications. you are operating in a fake world designed by midwits to keep you imprisoned. you will be forever cursed to follow the ptolemaic model of the universe, and you will die confused as to why planets have epicycles
>>
>>102470291
I wrote my own FBX loader
Waste of time, use assimp
Writing your own PNG parser is also a waste of time
>>
>>102470282
LMAO
HAHAHAHAHAH
LMFAOOOOO
OK MR LARPER, GO AHEAD AND TRY THAT OUT WITH A MILLION OBJECTS, LET ME KNOW HOW IT GOES AHAHAHAH
>WHAT IS MALLOC
>MALLOC IS INSTANTANEOUS
>WHAT IS CPU CACHE
>WHAT IS LATENCY
>WHAT IS MEMORY RE-USE
>WHAT IS AN INDEX INTO A POOL

HAHAHAHAHAH OK LET ME KNOW YOUR FRAMES PER SECOND, SURELY JUST ADD A BIGGER GPU TO YOUR POINTER FETCHING BOTTLENECKED GAME HAHAHAHAH AND IM THE LARPER!!!!
>>
>>102470309
games dont have a million dynamic objects
>>
>>102470296
no, wrong, using fbx and png at all are a waste of time

you already know what objects you need to draw in the scene and their textures, WHY are you serializing them? if you MUST serialize them, which you almost never need to do, WHY are you using kitchen sink serializers written by midwits?

it turns out that if you LOOK AT THE ACTUAL DATA THE GPU NEEDS TO SEE, the serializer you COULD write yourself is simple and easy
>>
>>102470326
Artists need a file format that exports from their application retard
>>
>>102470322
ok, by your logic, you want things to be as simple as add/remove obj to/from scene, because simple is good. you don't want to write your own particle system, that sounds hard. so, i can just add and remove each particle right?
>>
>>102470337
Batching particle systems is good but for general game objects you can absolutely use malloc and that's what every game you play does
>>
>>102470331
THEY DONT "HAVE" TO EXPORT TO FBX IF YOU GIVE THEM YOUR OWN SIMPLIFIED FILE FORMAT YOU FUCKING DUMBASS!!!

IT DOESN'T TAKE YEARS TO WRITE A SERIALIZER!!!!
>>
>>102470347
It's easier to write an importer for your engine than it is to write an exporter for possibly multiple art tools
>>
>>102470344
oh yes, i am SURE that every triple AAA game truly is mallocing (((EVERY PARTICLE))). you are so smart! thats why triple aaa game perf is as good as it is, isnt it!!!
>>
>>102470358
I just said batching particles is good, and most AAA games use malloc, yes
>>
>>102470355
are the artists in the room with us right now? do they send you their feature requests and nightly builds telepathically? is the cia telling you to add another library to your dependencies?
>>
>>102470010
OK larper
>>
>>102470370
I am an artist, I wrote my own exporter for Max for my own file format, but then when I swtiched to Blender I just decided to write an importer for FBX so I wouldn't have to keep writing plugins for every program I or others wanted to use
It's easier
>>
>>102470377
the only larper here is you, since you clearly dont know what any of those terms mean. if you did, youd be asking questions on how i implemented them
>>
>>102470392
all you do is yap and not show anything. therefore you're larping.
>>
>>102470392
nobody is impressed by your larp accomplishments
>>
>>102470386
the literal definition of bikeshedding. "if you give a mouse a build system" tier programmer
>>
>>102470409
Switching art tools is not bikeshedding, Max is buggy garbage, at least the version I had
>>
>>102470034
Fuck off you stupid moron.
>>
Friday Schizo Autist Edition
>>
>>102470010
>no i keep it all to myself because then other people on the internet cant intrude on my intensely personal and beautiful relationship with it
Sounds like a larp ...

>>102470392
Explain your implementation details then. You don't have to beg for people to ask you, share them if you think it's relevant.
>>
>>102470487
ok so i wrote something about the memory management code i wrote and then 4chan decided to swallow the post, so now i'm writing it again

basically in vulkan on some platforms you are limited to as low as 4096 individual memory allocations before the call to vkallocatememory fails. quite obviously this means that we should allocate bigger blocks of memory and then write individual objects into them at offsets, and then just keep track of their start position. the question of "how big should a block of memory be", i chose 256MB but you can also make this dynamic by querying deviceid/vendorid or just the device memory heap properties themselves.

this is all fine and good if you have relatively simple levels that can all be mallocd and freed together as one big unit, but if you are in a streaming asset open world type of game, you will have objects coming and going all of the time. over time you might notice memory becoming fragmented, i.e, you ostensibly have x amount of free bytes in a block, but they aren't contiguous so you can't write the next game object into them

one idea is to simply reshuffle all of the contents in the block rather than simply blowing the block away and reallocating. but for critically important objects this might introduce hitching and stuttering or even worse, flickering of important objects on the screen like the main character. so i further separated memory blocks into "important" and 'unimportant' objects, and the developer has the power to inform the memory allocator as to which things really shouldn't be fucked with and which are ok to reshuffle at any given moment
>>
The person you're quoting sounds like they have a solid understanding of Vulkan's memory management principles, especially regarding the limitations on the number of memory allocations and the need to manage fragmentation in complex rendering scenarios, like in open-world games. Here's why their post suggests they're legitimate:

1. **Memory Allocation Limits**: They're correct that Vulkan has platform-specific limits on the number of individual memory allocations. This is a real concern, and the solution of creating larger memory blocks and managing offsets manually is a well-known and necessary optimization in Vulkan development.

2. **Block Size Considerations**: Their choice of a 256MB block size seems reasonable and would be in line with how you might allocate larger blocks to reduce the number of allocations. They also mention dynamically determining block size using `deviceID/vendorID` or heap properties, which is exactly what a Vulkan developer would consider.

3. **Fragmentation**: They correctly identify memory fragmentation as an issue, especially in scenarios where assets are streamed in and out, such as in an open-world game. The mention of contiguous memory and the need for defragmentation strategies is a common challenge in memory management.

4. **Defragmentation Strategy**: The proposed solution of marking "important" and "unimportant" memory blocks is an advanced technique used to manage performance and avoid issues like hitching, which can occur during defragmentation.

5. Trade-offs: They highlight the potential problems of stuttering or flickering when reshuffling memory, which shows deeper understanding.

All of this points to someone with practical experience in Vulkan, memory management, and the complexities of game development. While the language is informal, the technical details are accurate and consistent with real-world practices in Vulkan and low-level rendering.
>>
>>102470955
>chatGPT says I'm cool
>>
>>102470985
he is way less of a liar than all of you mother fuckers :)
>>
>>102471037
this is just sad bro
>>
>>102469325
>nothing fucking works 80% of the time
>I'll remain as ignorant as possible
lol, lmao even
>>
do you guys even work at something or just shit post here
>>
>>102471134
the higher up you go in the corp world, the more free time for shitposting

but as evidenced above, a lot of people here. are unemployed library-slapper youtube-tutorial devs
>>
>>102471157
You're the lowest tier of developer, the schizo hobbyist programmer who spends his entire life screaming into a hall of mirrors and never produces anything
>>
I have so many enemies out to get me, they always put me down and make sure my game won't succeed, but they will not defeat me no matter how hard they might try. my mum will not dissuade me
>>
>>102471174
i know exactly what i've produced, i know exactly the amount of money my bank account contains, and i will eventually be releasing everything i've done for free anonymously once i am convinced it cant be traced back to me and that ive made enough money to retire
>>
your enemies can't get to you if you kill them
>>
>>102471263
meanwhile i've made a game that people actually liked
>>
>>102471281
lets hear everything you would like to say about it :)
>>
>>102470888

>basically in vulkan on some platforms you are limited to as low as 4096 individual memory allocations before the call to vkallocatememory fails

"The maximum number of valid memory allocations that can exist simultaneously within a VkDevice may be restricted by implementation- or platform-dependent limits. The maxMemoryAllocationCount feature describes the number of allocations that can exist simultaneously before encountering these internal limits."

So this limit only exists if you keep stacking up allocations, unless I'm misunderstanding something major. If you just deallocate normally and mind the limit, there should be no problem, correct? So why are you concerned about a limit of 4096 allocations? I am genuinely curious because I didn't know that this limit would ever be a concern.
>>
>>102471518
I'm sure it's some limit that only exists on some crappy phones and not in the real world
>>
>>102471518
in the naive case, particularly because of the way some sample vulkan tutorial applications are implemented, some people will do an allocation per mesh. it is entirely possible of course to have a scene in even a low complexity game with greater than 4096 meshes, all of which cannot be deallocated because they are well, in the scene, therefore they must be important, otherwise they would have been removed and deallocated. thus there is no other option in that scenario, you must have larger blocks of memory into which you write more than one mesh :)
>>
>>102441368
idk if ur still around, but the weights wouldn't need to be "redone" if you add bones, you would just need to assign weights for the new bones you add. Add a bone, add a vertex group with the same name as the bone. Then add vertices to the group with the weights you want, it's straightforward in how it's done, but it can be tricky depending on the complexity of the mesh. Sure if you're messing with new parent bones and hierarchies of new bones, that may involve a lot of work to make it look good, but just adding one bone and assigning some weights? not so much. Not enough info.
>>
>>102471538
Even still why would a limit of 4096 simultaneous allocations concern you? Remember these are simultaneously allocated objects. Why would you ever need that many buffers when you can use uniforms or push constants, or use a second vertex buffer for instanced rendering? For images you can create large images and use image layers. So I truly don't understand the problem he is trying to solve here and why the arena allocator he is describing solves it.
>>
>>102471538
>>102471822
When I said "you" I meant the anon not "you" the person replying to me btw.
>>
>>102471822
im quite confused, are you saying that you can't envision a scene with tens of thousands of unique, non-instanced, meshes with their own groups of textures and geometries? don't forget, we also need memory allocations for post processing, intermediary images, frame buffers, all of which must exist pretty much during every frame and can't be loaded and unloaded all that frequently at all. in the absolute worst case scenario where something does need to be unloaded and loaded, it's typically offloaded to another thread since the realloc is so costly
>>
Instead of making a game, what if you sell the game engine instead? Or give the ownership to a company that is willing to pay for it.
>>
>>102471975
sadly there are quite a few good engines out there already, and i dont mean unreal, unity, godot. very few people in the market for buying a bespoke one-- they've either made their own or are using someone else's
>>
>>102471257
you have to take her out anon. your game will never be great until she can't interfere anymore... for good...
>>
>>102471950
>>102471518
>>102471822
>Im quite confused, are you saying that you can't envision a scene with tens of thousands of unique, non-instanced, meshes with their own groups of textures and geometries?

Honestly, when I was posting I was repeatedly waking up and going back to sleep. Now that I've properly woken up and drunk my tea I'm not really sure what point I was trying to make. Sorry about that. When I think of this sort of scene, in my head I think "just allocate a large vertex buffer". So the limit of allocations is never a concern in my mind, but obviously, you are circumventing the problem of the limit when you do that. You already explained you were doing that though, and my best guess was that I was jumping to some weird conclusions and ended up being unclear. I suppose I just found it weird that you would even mention it when allocating a larger buffer seems to be the default strategy. So once again, I apologize for not articulating my point well.

Moving on, I don't understand why an arena allocator with a binary value indicating whether the value can be shuffled is a robust or desired solution to this kind of problem. Could you tell me exactly what kind of scene you are generating? I don't understand in what situation you would need to track the allocations of these objects individually.

>don't forget, we also need memory allocations for post processing, intermediary images, frame buffers
What sort of post-processing are you are doing where this limit is a concern? By post-processing, I assume you are describing the process of rendering to an offscreen framebuffer, using a shader, and then rendering to the swapchain, correct? You should only need a couple of images for a post-processing chain. I never tried this, but couldn't you also just use image layers if you had a particularly long post-process chain?
>>
>>102471975
indies don't want to buy a game engine
corpos either have their own or pay for a battle tested one like unreal.
>>
>>102472364
thanks no worries, i will respond to you a bit more in depth later, ive been up all night and feeling a bit sick and should try hard to take a nap. for post processing effects btw i mean like bloom, depth of field, night vision goggles etc. the writeable images and read only textures for these also need to be counted against the max alloc limit. maybe it would be fun to write a small program that reports all of the real world values for devices out there and phones home to a server :)
>>
that's it, i'll take the glfw pill
>>
What library should I use for sound that is the most lenient in terms and conditions of usage?
>>
I hate to say it but I am considering moving my game dev activities to Windows from Arch. Is this mature and smart or do I cling to my hate of windows? Trying to learn UE and get a job rn.
>>
any good books/guides on multiplayer games?
>>
I'm writing
my own text
wrapper
>>
File: spess.png (189 KB, 1702x1384)
189 KB
189 KB PNG
im not a massive fan of tilesetter but its useful for making blob tilesets, id recommend it and aseprite/libresprite if your doing pixel art
>>
>>102474347
why not something like ldtk? too many features?
>>
Dear readers of /gedg/, anyone wanna try out my game? It isn't finished, I have not yet implemented all graphics or added any sound. However it's playable (on dekstop, if fucked up my mobile graphics). It does require love2d to run since I haven't compiled it yet. I would appreciate any feedback on the mechanics. It is meant to be a game for casual phone users.
https://files.catbox.moe/qlhmf0.love
>>
>>102474439
thats just a level editor right, im not using tilesetter as a level editor just mainly to help relieve the tedium of making those big connective tilesets
>>
>>102474574
ahh gotcha
>>
File: slime_carousel.jpg (70 KB, 590x325)
70 KB
70 KB JPG
I'm thinking about making a dragon quest 1 clone (either as an SDL app or a GBA or DS homebrew game for shits and giggles, nothing serious) as gamedev "practice".
Problem is I'm already stumped as to how to start. What do I implement first? Graphics? Menu system? Field/overworld? Battle?
And how should I structure the game's code and data too? So many unknowns...
>>
>>102471257
show us your game so we can support you anon
>>
>>102474664
have you done any game projects already?
>>
>>102474796
Started? Yes (multiple). Finished? No (none).
>>
>>102474809
unless you're procedurally generating all the maps i would handle storing and loading map data first. i would urge you to do some arcade type game like pong instead though since those games can just be defined entirely programmatically
>>
Can you really patent a existing invention? People say prior art but Obama passed a bill in 2011 that allows this so idk wtf is going on
>>
>>102469948
whats wrong with cpp
>>
>>102469948
Not making your engine in pure machine code? Heh what a pussy.
>>
>>102475920
You can patent anything even things you do not own or made
>>
I hate patents so much it's unreal
>>
>>102476389
Keep talking like that and I will patent manual breathing.
>>
>>102476666
sorry but I patented boot licking. my lawyers will get to you soon.
>>
>>102473503
any of these
- https://github.com/kcat/openal-soft
- https://solhsa.com/soloud/
- https://github.com/mackron/miniaudio
>>
File: output.webm (2.1 MB, 1280x720)
2.1 MB
2.1 MB WEBM
Changed how objects are moved and rotated. The object origin is now always in the center of it and the rotation is now with a keybinding instead of with the mouse.
>>
>>102421413
Work in progress, XCB + Vulkan, 2D pixel art renderer, outperforming Raylib by 40% (primitive "benchmark" on Git), no details for now, sys.
>>
>>102477708
>geany
based
what are you doing to outperform raylib? I tried something similar but when I starting reaching feature parity it ended up being the same shit
>>
Say the only computer I have access to right now is a raspberry pi 4 (my main PC is currently out of commission and being repaired because the cpu overheated too much and the cooling unit is broken)
What do I use to make coding on my Pi not an extremely painful experience?
>>
>>102478077
neovim
>>
new bread?
>>
>>102424000
For actual application use just look at engine GitHub repos
>>
>>102477349
yeah way better than the sims, that shit was clunky
>>
>>102477708
>outperforming Raylib by 40%
doesn't raylib batch draw calls to avoid overhead? I think the performance should be within 10% range in release mode, am I missing something specific you did with your functions?
>>
>>102477349
nice
>>
>>102477708
>xprite
>xulkan
>xurses
>xuxuxu
XOVL
>>
>>102479065
He's just norting his code is all.



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