"Progress first, Polishing later” Edition/gedg/ Wiki: https://igwiki.lyci.de/wiki//gedg/_-_Game_and_Engine_Dev_GeneralIRC: irc.rizon.net #/g/gedgProgress Day: https://rentry.org/gedg-jams/gedg/ Compendium: https://rentry.org/gedg/agdg/: >>>/vg/agdgGraphics Debugger: https://renderdoc.org/Requesting Help-Problem Description: Clearly explain your issue, providing context and relevant background information.-Relevant Code or Content: If applicable, include relevant code, configuration, or content related to your question. Use code tags.picrel sauce : https://x.com/cinnadev_/status/1959665536100340163Previous : >>106407661
Vulkan > whatever shitter garbage your doing
>>106440531Rdr2 was made with Vulkan. Not a bad renderer at all.
>>106440381Video sauce?
>>106440531what if I was using GNMX?>>106440615its in the OP>picrel sauce : https://x.com/cinnadev_/status/1959665536100340163
>>106440381>just make it exist firstShit advice, absolute midwit drivel. I wish people stopped parroting this dumb idea. How many games have died due to technical debt caused by this retarded idea?
>>106440754>Shit adviceit is a shit advice for game dev that solely relies on a game engine like a midwit is supposed to.But its a good advice for game engine dev because we'll do better in the next iteration once we got shit to work during the first run.
>>106440381soul/soulless
>>106440774No, it's just shit advice and how projects die. It's like "just work around the bug if its not critical bro". Why do you think it will take less effort to fix something in a year when you've forgotten most of what you knew about it instead of now when you've been actively working on it? This advice only works for art, because you can dump in some placeholder and then replace it later. For your engine? You can, but you're increasing your own workload tenfold and making it more likely you abandon the project due to technical debt. Ironically, engine dev is more like classic painting or sculpting: you can undo mistakes, but it's orders of magnitude harder than just taking the time to at least avoid the worst of them.
i iterate on engines features all the time. it's impossible cover all possible problems and corner cases of the system until you encounter them first. for this you need something working fast.
>>106441352>it's just shit advice and how projects dieyou seem to be one of those retards that believes writing perfect, well-optimized, produciton-ready code right from the start is what everybody should be doing. Have fun with your premature optimizations.But typically, software development is a constant cycle of adding new features and refactoring your code, which in other words means "make it exist first, make it good later".>just work around the bug if its not critical brohow?the text goes "make it exist first ... make it good later" not "make it exist first and leave it as it is"
https://registry.khronos.org/vulkan/specs/latest/man/html/VK_EXT_device_generated_commands.htmlUse-case? Seems like Valve had a big hand in it.
>>106441352obsessing about perfect architecture is how you turn into a jonathan blow or casey muratori taking 900 years to make a basic game. "just make it exist" doesn't say "write unmaintainable slop that is impossible to refactor and runs at 5fps. You are kidding yourself if you think anyone writes software in 1 perfect draft
>>106441522You keep harping on about it like it's some reasonable middle ground, but the reality is nobody who parrots that comes back to it to improve the sloppy work, it just becomes an excuse to be lazy and write bad code.>>106442768>jonathan blowYou mean the guy who has made 2 games which have both been extremely successful, both easily in the top 0.0001 percentile of indie games? Sure he's only made 2, but the vast majority of indie developers don't even release 1 in their whole lifetime that gets close to the success of Braid or the Witness. >"just make it exist" doesn't say "write unmaintainable slop that is impossible to refactor and runs at 5fps. You are kidding yourself if you think anyone writes software in 1 perfect draftSee above, it's always used as an excuse for laziness. Nobody writers perfect code on the first try (or ever for that matter), but you should try to write as good a code as you reasonably can on the first try.
>>106443070>the reality is nobody who parrots that comes back to it to improve the sloppy workyeah, I get that your reality is the one where you wrote a vulkan renderer within your first try and went all the way to implementing PBR and GI within the first try because you knew very well about how to code all that right from the start before you even began writing a vulkan renderer for the first time. That way you never had to come back to improve your sloppy work because all your work was like that of a pro since the start.But my reality is that I had to gave up several times, pick up where I left off, feel lost, start from scratch and keep at it till I get there.You don't get to project your elitist reality onto my midwit reality. At least, I got a peace of mind.Keep your bs to yourself.
>>106443198>higher standards than the bottom of the barrel means unattainable perfectionLazy and stupid people instinctually feel threatened by standards and lash out with hyperbole and strawmanning.
>>106443198Holy mother of reddit. When will you fuck off and kill yourself already? It's bad enough everyone had to migrate to /vg/s amateur development thread some time ago. You dont need to kill this dead horse.Nobody wants to hear how you think slapping the words "GI" and "PBR" next to your engine makes it this impossible to architect thing. No, you spastic desperate to spam nu-graphics-dev content every single day, these aren't stunning achievements that need 50 rewrites and 3 years of tinkering. All this is ironic coming from you, the nigger who is admittingly a master of sweet fuck all and yet somehow musters the ego to assert what other people should be doing. I'm sorry your rewrite of <muh learnopengl> took so long, I guess?Sincerely, kill yourself
>>106443546>>106443610lmao. I was being sarcastic and looks like I did a fantastic job. Anyway, contrary to what you believe, a lot of folks do come back to improve their sloppy work and they either improve it or start from scratch instead, all of which is in regards to "make it exist, make it good".Keep on coping >Nobody wants to hear how you think slapping the words "GI" and "PBR" next to your engine makes it this impossible to architect thingI know. That is exactly how you made it sound like with your "it just becomes an excuse to be lazy and write bad code" take. Of course, you will dodge all that and pin it on me and I don't mind so go ahead and cope.
>>106440381Is it wise to make a game using C and not C++. I enjoy the former's simplicity and don't enjoy how bloaty the latter is.
>>106440381>op pickino
>>106443070Jonathan Blow got absolutely BTFO by not one, but two indie games made in fucking game maker (Hotline Miami and Undertale).
>>106443070Braid only made $6 million. For an indie success, that's mild these days.
If John Blowjob was working on some advanced 3d PBR shit or whatever that’d be fine but he’s literally making top down indie slop. I don’t know why he’s so autistic. Devving to nodev is insane.
>>106443765>Is it wisethat's like asking is it wiser to take a bus or a taxi to reach your destination.A definite answer can't be given. Just like how you'll need to experience traveling by a bus and by taxi at least once to figure out what you feel most comfortable with for reaching your destination(you sometimes might feel like taking a bus and a taxi the other times, depending on your destination and what travel experience you'd prefer to reach there), you'll need to have a serious experience with both of those languages to actually figure out what is the best tool out of those two for the job you are about to take over.Keeping if it is wise or not aside, if you enjoy C then maybe just stick to C++11 and don't go any modern than that. You'll get to enjoy the best of both worlds. C with virtual method tables is a real comfy and every version after C++11 gained exponential complexity along with huge compile times, making those modern version not so worth it.
>>106440381Is game dev hard or is it merely time consuming?
>>106444031it is time consuming because it is vast.is it hard? not really.Its just like developing a new skill. Be it driving, diving, cooking or game dev, it might be hard at first but once you get the gist of how you should do things and get comfortable with what you are doing, it won't feel hard at all.
>>106443810And both of those got BTFO by Lethal Company, hope you're using LC as your blueprint then.
>>106441352if your engine is composed correctly it shouldn't matter if you're rewriting entire functions or even classes... post your project, anon
>>106444031It's really fun too.BASIC was the best game on my MSX.
>>106444137>if your engine is composed correctly it shouldn't matterexactly. This reminds me of semantic compression by Mr. Muratorihttps://caseymuratori.com/blog_0015sometimes, the language of choice also makes it an absolute nightmare to make any changes later on, especially when clean code shit like abstraction and inheritance are heavily practiced.
>>106444031Depends
>>106442358nvidia have had this since 2015https://registry.khronos.org/OpenGL/extensions/NV/NV_command_list.txtjust imagine what the future would be like without crappy amdjeet hardware.
>>106444031Time consuming. But if you're doing something hard then it can be hard.
>>106440381>>106440754>make it "exist first">now I'm paralyzed because anything that I would have to touch would break it and require major rewrites
>>106444449Don't worry bro instead of doing it right the first time just half ass it until it works then come back to it in a year when you remember absolutely fuck all about the topic and what you did, while also having 100k lines of code that depend on it and will cause domino effects.It's a problem for future you anyway.
>>1064443794 cores, 2 threads, IGPU a bit better, rinse and repeat
>>106440381Both of those look like shit though?
>>106444560That's fine. Even shit games will sell
>>106440381But those both look bad.
>>106444611>look badThat's fine. Graphics aren't everything.
>>106444478Arm processors would have become mainstream far faster because companies would have been trying to get out from Intel's cartel. Arm supposedly has 10-20% of the cloud provider marketshare already. Makes sense considering the big 3 have been making their own Arm server SoCs to get out from under Intel and AMD, and Nvidia's superchips are all Arm based now. Now imagine if intel was price gouging without AMD to act as a release valve. x86 would be dead.
>>106444856Was just alluding to intel before the ryzen.As soon there's no one else trying, stagnation is immediate.
Progress:- Did some interface work recently, mostly bank, stats/bonuses. And how I prioritize some inputs, eg escape will close open interface(s) with some preference- Fixed multi-part animations so the travel and hit animation frames get proper frame duration times from the definition on each spell phaseAlso I added the params to ffmpeg for webkit bros
I really want to get into graphics programming, I want to do this kind of programming. I want to get low level and avoid the webdev jew.Except, I do have a dayjob, although unrelated to programming. Fortunately, although some days we have a lot of work, I also have some days with a lot of free time and my boss (my dad) usually lets me just be on my computer.I was thinking on following learnopengl dot com, except apparently it'll be hard from a mac. And I don't want to work exclusively on my desktop back at home.What workflow do you guys suggest if I want to work both on LInux (or maybe Windows, I guess) in my home and also on my mac? Should I just replace the thing for a thinkpad? Maybe I should just focus on building a small game with something like raylib or something, for now.
>>106444956SDL + Open GLSDL is the ultimate "werks on everything", at a point you can do stuff like dreamcast with it.
>>106444986Do you still need OpenGL? I thought SDL3 added a lot of GPU support.
Thats it, I'm starting over. Again.
>>106444986Thanks I'll check it out. I think I actually did some small hello world kind of example with SDL before.Isn't OpenGL a pain to use in macos though? That was part of my point.
>>106445078SDL2 already do it with the engine, but he wants specifically to learn OpenGL>>106445115If i'm not mistaken, SDL makes OpenGL trivial on OSX as it does with all other platforms.All the initialization bullshit is handled by the SDL itself.
Anyone know any good game dev IRC channels, specifically people focused on engine dev
>>106445115>Isn't OpenGL a pain to use in macos though? That was part of my point.>>106445133>If i'm not mistaken, SDL makes OpenGL trivial on OSX The issue is that apple deprecated OpenGL and doesn't support it anymore. Opengl will still work on mac for now, but it could break in the future and apple will not fix it. They want you to use their dumbfuck API, Metal
>>106445235Metal is actually nice but you shouldn't support it on general principle of avoiding vendor lock in.
>>106444956apple doesn't like C++ or opengl.you might find it easier to develop in windows in a VM like parallels.stick to unity / godot if you want sanity.Otherwise if you insist, I would suggest sticking with opengl if you want shaders (for 3d games), simply because of webgl (if your game is going to be free, your #1 priority should be trying to get as many people playing as possible, the web is easy and portable, but it going to run slower/browser compatibility so having a native copy is nice to have). If you want things to be more simple (for 2d games), I think SDL's built in rendering / raylib is fine.To get around the opengl depreciation, there is a tool called Angle that runs opengl ontop of Metal, Vulkan, directX, and etc.But I believe the abstraction could interfere with GL profilers / debuggers like RenderDoc / native tools (if you had a Nvidia / AMD gpu, there are some extra tools like Nsight and some AMD profiling thing with works with OpenGL).OpenGL has a lot of weeds that won't be covered in learnopengl, and arguably more weeds just to get C++ running on Apple in a portable way (sharing / distributing is nightmarish compared to Windows, linux is also not great but steam can run windows binaries on linux).
>>106444986Works on everything but Windows (who plays video games on Windows anyway) where you can't even move the window without freezing the program.>if it was finally fixed in sdl3 I don't give a fuck, kys faggot
Guys, do you know resources where I can learn about building multiplayer games?
>>106445235If apple ever actually removes ogl, then there will be a project to add a shim layer from gl to metal. You're in the exact same boat today if you use anything besides metal or opengl, because everything else requires a shim layer already.
>>106445384I never experienced that with SDL2 at least.I have a few projects i run on linux, windows and all that and i can drag the window around with no issues.
>>106445384>if it was finally fixed in sdl3I don't think so.win32api doesn't let you poll for messages unless you let go of mouse pointer after a window enters the move or resize event. That's how it is designed. I write my apps such that the renderer calls update when windows moves and resizes as well. Another solution is to render on different thread, won't be perfect but will do a very good job.>>106445430I just went through unreal engine's source code. Fuck HTTP. RPC FTW
>>106445384Ah wait, not i did read your complaint correctly.Yes, game will freeze when dragging windows on windows, but i don't see the use case to keep the game running while dragging the window, unless you're making some very specific software.
>>1064454811. you're making any other software than a game2. you're game has lockstep multiplayer3. you're simply smart enough to realize a program gui program shouldn't pause when you click the title bar
>>106445760>1. you're making any other software than a gameThe only case where this is a problem is if the software has a processing portion like it renders pictures or process data etc.. but you should be running on another thread>2. you're game has lockstep multiplayerYou should be running the multiplayer portion in another thread, as the OS will fuck with you either way>3. you're simply smart enough to realize a program gui program shouldn't pause when you click the title barThere are many cases where this is desirable, like single player gamesOf course, that is a windows problem mostly.
>>106445235I really am starting to lean towards replacing my laptop>>106445356Thanks for the detailed explanation, anon.
>>106445115You can learn OpenGL on Mac. It's stuck at version 4.1 basically. So most features in tutorials will be there. You can go through the entire LearnOpenGL tutorial. The feature you want that's unavailable is compute shaders. At that point you'll have to:- use some kind of API translation layer (MGL, Zink)- switch to sdlgpu or bgfx (wrappers around lower level apis)- use something like webgpu which is another wrapper around lower level apisJust learn the lower level apiHonestly learning metal if you're stuck on Mac is not the worst idea. You're just writing toy applications to learn graphics right now you don't have to think about longevity or supporting every platform
Someone told me you're not supposed to tie your physics to the framerate so what do I tie it to?
>>106440725>she/herAre dudes still pretending to be women to get indie dev brownie points
>Just make it exist first Then realize you essentially vibe coded everything and have to redo literally everything from scratch if you want to go forward in a productive manner?Bad advice.>no, just do it properly from the start!So, make it good from the start rather than making it exist first?
>>106445955Time
>>106446056So I calculate how much time has elapsed since the last frame and advance the physics but that amount?
>>106446071Yes, it's called delta time.Alternatively, you can use a timer callback to run your physics in a fixed timestep independent from the video.It is more stable than delta stuff, but you limit the physics frame rate, and may have to use dead reckoning to smooth out the output to the video.
>>106446071You count up time and your physics engine "consumes" fixed time steps by subtracting from the available time, each time there is enough time available.
>>106446098>>106446116Thanks. I'm not entirely new to programming (I do some web stuff) but I have very little idea of how to program games. I'm trying to get into it, though.
>>106440774>engine dev, aka: how to make a small 4 months project last 5 yearsthis advice is on the same level of the "dream game" slop
https://gafferongames.com/post/fix_your_timestep/Mandatory reading. Technically it introduces a frame of delay but it's imperceptible at > 60 fps. And it allows you to update physics at a slower rate and just interpolate. Which will make it easier to get high fps. This is the only same way to handle delta time in games in a way that supports every framerate. Never lock the fps like fucking Konami or other "AAA" games
>>106446164Depends on what you consider "enginedev".If you consider downloading SDL2, box2D, lz and 30 other libraries, and just mushing em together and making the engine be able to read TilED data, it's not much slower than just using godot or something, and the game ends up a bit smaller and faster.However, what i'm personally doing is pretty "engine dev slop", given the only code that is not mine running is the diskROM.
>>106446190That is a step above of what i knew in this
>>106446190no, 16.7 ms of latency is not imperceptible. also, judder feels and looks like absolute shit, and interpolation (to mask judder) feels floaty when applied to the camera.variable timestep is best for the player. don't bother whining about nondeterminism if you're already using a nondeterministic physics lib.
>>106446369You can disable interpolation for things like mouse movement of a first person cam, but keep it on for everything else. I'm all ears if you have a solution that works for 30fps to 240fps without a big delay or judder.
>>106446410Oh and is specifically deterministic. My game has physics in it and I don't want weird shit game speed specific issues cropping up. Running the physics at a lower rate and interpolating has workee great for me
>>106446410i just told you: variable timestep
>>106445851>I really am starting to lean towards replacing my laptopYou could try asahi linux dualboot (assuming you have 8gb of ram and enough space / portable SSD).I am the other anon, and I should warn you that apple is "harder", but windows and linux are still hard, and it really comes down to cmake / whatever (other anons will tell you that it's "soo much easier if you don't use cmake", it's the same level suffering when you get into the weeds of it and try to get things working on all the platforms, if needed).The reason why unity / godot is so popular is because it works on the web, apple, windows, android, with an NDA + pay for engine license on the switch / consoles, and it's as simple as clicking export, and you still get all the engine dev features, like shaders and drawing raw vertices (but it's harder to wrap your head around it because of all the layers of abstraction).It's actually a harder mental game to figure out what you CANT do on an off the shelf engine, compared to writing the engine yourself (most people here are bloat/micro-optimization-schizos, they are not wrong that unity / godot devs are lazy but if you could put a fraction of the level of effort engine devs put into a game engine, you would get the same, if not a better game finished, 10x quicker).
>>106446369I am not using a nondeterministic physics lib.
>>106446508Cmake is really required if you're doing cross platform engine dev
>>106440381Odin is slow isn't it.Yes, it is slow because it doesn't use LLVM.Sure, but you don't have to be LLVM to be fast? What about GCC?Yes, but GCC is made by a large team of experienced developers working on it for decades. Odin is made by one, admittedly experienced, developer. But still, he is alone.What about the features?You might as well use C# because it is going to be faster than Odin and has more features.Don't use Odin.
Anyone here using SDL3gpu with metal or d3d12 successfully?
>>106446634>SDL3It is not out yet. Don't use that experimental shit.
>>106446655https://github.com/libsdl-org/SDL/releases/tag/release-3.2.0Are you stupid? It's stable. I'm just wondering if anyone's run into hard issues with it. For example you can't pick an explicit GPU. Which is fine for most people. But scenarios where someone has multiple discrete gpus might be a problem.
>>106446584what about its simplicity? What about "having fun"?
>>106440381Daily reminder to use libresprite/aseprite for drawing game art.See this tutorial for reference: https://www.youtube.com/watch?v=iQFvjAJ5gIo
>>106446699>53% completestupid tranny, can't you read?
>>106446734>girl voicealright im sold
>>106446734goyware
>>106446190>>10644636916.7ms of latency is imperceptible. 16.7ms of latency added on top of the rest is absolutely not imperceptible. 35ms of latency is playable (but not great or even good), 50ms of latency is unplayable, experienced that first hand in that new Robocop game.
>>106446436Truth nuke. Interpolating in single player games is retarded.
>>106446753>TrannyOpinion discarded take it to one of the troll threads >>106446799How does 16.7ms randomly become triple that. The "variable time step or die" reeks of contrarianism
>>106447170Because you don't just have 16ms of latency anon. It's 16ms added on top of everything else.
>>106446799>>>>>>16.7ms of latency is imperceptible.
>>106447170there you have it. if you don't mindlessly follow a blogpost that gets linked fifty times a day on reddit and hackernews, you're a contrarian. you can't possibly have a preference considering the drawbacks of each approach.
>>106445430rs private server resources https://www.rsps.dev/documentation
>>106446436not anon, but you generally need interpolation if you don't want your fps to be bottlenecked by one part of your code, like physics.when the jolt physics API says that it's stable at 60hz, that means below 60 steps per second, there will be issues.JoltPhysics examples calculates the tick like this:// When running below 55 Hz, do 2 steps instead of 1numSteps = deltaTime > 1.0 / 55.0 ? 2 : 1;And in the loop, it checks if the FPS is below 30hz, and it caps it (so it starts going in slow motion).The physics is happy to run at 200hz if you could handle it (fps is limited by the physics in those examples) since usually high step counts help with stability, and there is no point in implementing physics interpolation if your game can easily handle 200hz physics, and your rendering / other bottleneck reaches a maximum of 120hz.But if you can't, and your physics takes 100x more time that your rendering, you should interpolate it (if you want an optimal experience at a high hz / futureproof it). And physics interpolation should also help with fps stability (since fps is not tied to the step speed, instead it's your draw calls / etc).https://jrouwe.github.io/JoltPhysics.js/
>>106446508I avoided Asahi Linux for a while. But fuck it, I just installed it. I just want Emacs that works flawlessly (it's slowish on macos) and being able to study, for example, OpenGL in the same way on both machines. I'll try this for a while, if I don't get used to it, I'll switch to Windows or follow some of the other recommendations of the other anons. Thanks again.
>>10644718816.6ms includes frame render time.
>>106445975its possible>>106446164>how to make a small 4 months project last 5 yearsyes. That's how it becomes more addicting than drugs. Game engien dev is bad for health.>>106446584>Odin is slow isn't it.>You might as well use C# because it is going to be faster than Odin and has more features.if you are talking after seeing some benchmarks on the internet then you need to take a closer look. The Odin code used to test was shit(maybe intentional). It wouldn't make sense why Odin outperformed c# by a huge margin in a few test cases and c# outperformed Odin in other test cases until you take a look at the code. The guy who wrote Odin code did a very poor job.>Yes, it is slow because it doesn't use LLVM.Odin uses and always will use LLVM. It might use anything else in the future but it'll always use LLVM>you don't have to be LLVM to be fast? What about GCC?true.What you have to be is a heavily funded corporation. There is a reason why Zig is struggling to not have to be LLVM and Go is chilling not relying on LLVM.>What about the features?what about it?Odin got plenty of them. Its compiler is just over a GB when compiled from source, unlike C# that takes a lot of disk space and doesn't come with "batteries included" library packages that makes you feel like you have no need for a package manager, all of which are included within just over 1 GB source code, by the way. >Don't use Odin.and?You don't. Have fun with C#.Manual memory management and high performance is not for everyone, especially for those who decide from looking at benchmarks written in shittier code.>>106446734nah. They are good but only for raster shit.Imma spin up my own vector graphics editor and a vector graphics renderer for my game. With compute shaders, there won't be a performance issue at all.
>>106447629>vector graphics editorI know you said something about svg graphics before, but now I'm curious. Are you making something in a similar vein to adobe flash? Sounds pretty awesome.
>>106447631>>106444947Cool spells. These animations are awesome to watch.
>>106447332the 16.7ms we were talking about is the minimum bound on how outdated a physics frame can be in an interpolated fixed-timestep system
>>106447705>in a similar vein to adobe flash?kind of. But these is no virtual machine here. Apart from triangulation, all vector geometry is generated by compute shader so it won't be slow.Yes, it is the SVG graphics thing I mentioned before. The problem with vector graphics is that its always sharp af but some or most of the time, art style needs to be smooth and non-uniform.The only solution I have for creating soulful art with vector graphics that doesn't pixelate upon zoom is to create a vector graphic painter as well that is capable of replicating raster drawing app's brush strokes and storing those strokes as vector data instead of updating a bunch pixels on the frame buffer. This is gonna make operations like masking multiple layers very annoying to implement. Gotta see.
>>106445997Do thing properly, but don't strive for perfection. Realize that your game will be unpolished and bad at first and set that as your goal
>>106445997>So, make it good from the start rather than making it exist first?how can you make it good from the start when you have no idea what "good" is?That is why you make it exist first and understand it thoroughly so that you can always improvise upon it or recreate a better version.Remember saar, "premature optimization is the root of all evil!"
>>106447878Interesting. I once thought about creating an image editor that displayed the image using a signed distance field shader. With the power of SDFs, you'd be able to create images that wouldn't pixelate (too badly) upon zooming in. Making an image editor is awesome anyway, good luck with that. Are you a good artist?
>>106447714Thanks anon. Should be more fun ones soon, I want to do rock and sand spells that also travel
>>106444031Yes it's hard, it's one of the hardest things you can do, anyone who tells you otherwise is a moron
>>106448066Cool, these are prolly the most impressive part of your game right now.
https://gameprogrammingpatterns.com/game-loop.htmlAnother time step article. A fast time step of like 5-10ms is good.
>>106448336Your time step is the frame rate the monitor is running at, you don't get to choose
>>106448361There are VRR monitors anon. Realistically you can assume your display supports at least 60hz. The only time I've seen anything less than is using shitty cables on a 4k monitor
>>106448411and that means your timestep is 16.66ms
>>106448245I'm short on the gameplay mechanics just yet, but I'm about to start printing those soon! Luckily that effort pales in comparison to everything done to get here
>>106448428you can pick whatever update rate you want and interpolate, not sure why you keep saying this. For example: Console games can run at 30fps or 60fps. TVs are usually 60hz minimum. Would you say a console game running at 30fps connected to a 60hz has a 16.6ms timestep? no because that's fucking stupid
>>106448466Running your update multiple times a frame is wasteful
>>106448479Anon read the article. You're not updating multiple times per frame. In the "Fixed update time step, variable rendering" scenario. The idea is that you update the state of your world every N ms. You still produce 60 frames per second (or 90, 120, 144) etc depending on the refresh rate. But the renderer is simply recording a snapshot between the frames. The higher the refresh rate, the more snapshots between frames, and the smoother motion will appear. Lag because you're rendering inbetween frames is unnoticeable if this technique is implemented correctly
>>106448527that's what I mean by updating multiple times a frameFor every frame you render you update your game state several timesThat's wasteful, ideally you should update things once per rendered frame
>>106448548You can add an option in the settings to lock the framerate but keep this system. So people with high refresh rate monitors can get max use out of them, but people on mobile or battery can cap if they want. Rendering multiple times per update is required for high refresh.
>>106448570That has nothing to do with what I'm sayingThe ideal loop is update > render > update > render > update > renderIf it's update > update > update >render > updare > update > update > render you're being wasteful
I hate saying this but, more timesteps per frame makes the physics engine more precise, because you're effectively running everything slower and have less precision errors and wobbly systems and all that.I hate it because it quickly gets into the "JUST ADD MORE TIMESTEPS BRO" logic, instead of actually solving the problems in a less dumbass fashion.
>>106448599It does fix your timestep problems yes, but it's inefficient, there are better ways to do things especially if you're making your own physics system
>>106448613Yep, but if the system can handle it, running at 120 FPS or something, it's just less shit to fix.
>>106448019>image using a signed distance field shaderI remember seeing something similar at https://www.youtube.com/watch?v=BkOsE63bGuAby BYP and SkyTrias called SDF Atlas. You can skip right to it with timestamp, its the first entry. Though such a thing has its limitations, its always a more intuitive alternative than any 2D procedural painting app out there. there are some relevant work in the following year https://handmade.network/jam/2023Shapeup by Danile Hooper. There is also a relevant lux editor, its not SDF based but its cool.>Are you a good artist?no.I tried art seriously for 6 months. I improved but got nowhere never good and naturally stopped practicing as I was planning to learn music as well. Maybe I'll pick it up again and continue seriously so that I can git gud.>>106448245I second this. Shit looks very good.
>>106448019>>106448843more about SDF atlas : https://handmade.network/p/274/sdf-atlas/
>>106448583>If it's update > update > update >render > updare > update > update > render you're being wastefulNot if you want stable physics.
>>106448967There's better ways to do stable physics
>>106448995Such as?
>>106449010Depends on what you need
>>106448967Players really don't care about how accurate the physics or simulation is behind the scenes. Do not waste your efforts. If it works, it's enough.
>>106449036Players definitely care if your physics are unstable.And what happens if you get a laggy frame for whatever reason (could be shit out of your control like an OS or driver thing)? You're going to step your physics with a delta of a second? Anything that's moving is going to disappear.
>>106448843This is great. Very interesting.
>>106449058The thing with physics is there's physics that are relevant to gameplay which benefits from being stable, but also isn't usually particularly complex or realisticAnd then there's physics used for graphical effect, tumbling bodies and debris in explosions, which is more realistic but doesn't need to be stable
Making my first foliage system has been funliterally just used leaves brush in krita, and a shader to have have eyecandy transparency + vertex displacement for wind
>>106440381Just wait for ai. It will read your mind later.
>>106449757Will it be able to correctly answer my personal question "Am I gay?" after reading my mind?
>>106448583that's a 2D game loopmost 3D games have a frontend/backend for graphics (graphics command assembly on the frontend, graphics command execution on the backend), and the physics should be on it's own thread if the frontend takes up a lot of time.physics (locations) -> read by frontend (interpolate between old and new state) -> execute by backendThis adds latency, but it all depends on the delicate balance of minimizing bottlenecks.So you might be 2 extra frames behind, the physics (only 1 extra frame for camera motion) but if you could reduce your frame time in half, that could be a minor latency hit, in exchange for 2x more FPS, but of course at 30->60hz, 2 extra frames would feel like sludge, and at 200->400hz, it probably feels good, but 400hz displays have no become mainstream yet.
>>106449863That's called pipelining, and it really doesn't have anything to do with 2D / 3D or graphics frontends and backends
>>106447629>ts compiler is just over a GB when compiled from source, unlike C# that takes a lot of disk spacedotnet sdk is ~400MB...
>>106450932I see.how large will the directory be when you build .net runtime, including the all the third party dependencies along with workloads, all from source in that directory?Turns out, all that for Odin is less than 550 MB. A little over 1 GB on my disk space was due to .git metadata I failed to ignore.The actual source code of the language itself is less than 35 MB. Rest is LLVM and vendor packages. And if the vendor packages that are unrelated to the development of language are ignored, it comes close to 350MB(on linux).This size of 550 MB is inclusive of the source code, all the dependencies and several third libraries and the final build files.
>>106449740sovlful
DX11 chads, I need some help:A separate instance buffer for every property? or a single instance buffer for a fat struct that contains all the properties?
>>106451774you typically have a per instance struct, and you upload an array of such struct into buffer every frame. that's just easier. there is no reason to pute every attribute into separate buffer.
>>106444031One of the most retarded thing you can do. A gigantic waste of time, it doesn't make any money, socially you're seen as the autist who didn't mature enough to leave his gaymes. And that if you actually *do* something. Just look at the same procrastinating schizos here trying to get some parasocial juice instead of doing anything worthwhile.
>>106441352Traditional painting has plenty of mistakes, you just don't see them because you start with line work and then fill in the details layer by layer... It is analogous to game engine development yes but you're misunderstanding the process of art itself... Deeply concerning, anon.