Vectors - Game Tools
10:52
4 жыл бұрын
Пікірлер
@fuzzy-02
@fuzzy-02 17 сағат бұрын
Why the id?
@jay-tbl
@jay-tbl 28 күн бұрын
What kind of optimizations did you have to think about? Things like concurrency for different parts of the world at the same time
@johnjackson9767
@johnjackson9767 28 күн бұрын
This is single threaded, so concurrency wasn't an issue. If I were to continue this, then I would thread multiple chunks concurrently and would have to be careful at boundaries.
@mastersquinch
@mastersquinch Ай бұрын
which monospace typeface are you using in your animations?
@johnjackson9767
@johnjackson9767 Ай бұрын
I took the time to code one up by hand because I'm a moron
@CatValentineOfficial
@CatValentineOfficial Ай бұрын
Now add poison, ooze, mud, plants, balloons, pipes, converters, bombs, switches, and sliders.
@eduardocasanova-personal3064
@eduardocasanova-personal3064 Ай бұрын
Does anyone know the name of a game like this? I purchased it at an office depot when i was a kid
@johnjackson9767
@johnjackson9767 Ай бұрын
store.steampowered.com/app/35460/The_Ball/
@1kvolt1978
@1kvolt1978 2 ай бұрын
If you will ever use Win32 API it will become a mess though. MS uses AllWordsStartWithCapitalLetterNoUnderscore style.
@Aaws424
@Aaws424 2 ай бұрын
This is very beautiful ❤ thanks
@ChernoPhil
@ChernoPhil 2 ай бұрын
Thats aweome! Is it possible / allowed to integrate it in a game?
@johnjackson9767
@johnjackson9767 2 ай бұрын
Sure, go for it
@ChernoPhil
@ChernoPhil 2 ай бұрын
@@johnjackson9767 nice, thank you
@ThisShitWontWor
@ThisShitWontWor 2 ай бұрын
classicVariable m_publicMember m_privateMember_ FunctionsAndMethods() n_nameSpaceMember
@connorjosh2088
@connorjosh2088 3 ай бұрын
Late to the party but I think that a really good way to simulate velocity would just be to follow the initial rules you made before adding velocity, but multiple times in one frame
@sairajk19
@sairajk19 3 ай бұрын
Nice video, Thankyou very much. These videos are very helpful! Discord link please :) Couldn't find the link.
@dimithras
@dimithras 4 ай бұрын
Came here from Noita. Actually Noita does not have anything new to pixel physics, there've been myriads of sandbox games with a palette up to 100 colors including C4 pixels, electricity and other cool stuff. What Noita is loved for - it's fungal shifting and much more effort on mixing different stuff.
@Faby__
@Faby__ 4 ай бұрын
Wtf this was the best video on particles i've ever seen. Amazing job
@gamelovers4974
@gamelovers4974 5 ай бұрын
Brother what's your discord server link
@Ismoh0815
@Ismoh0815 5 ай бұрын
John, where did the discord link go?
@CodeParticles
@CodeParticles 5 ай бұрын
@John Jackson, Ugh... thank you so much for this video. I say 'ugh' because I thought I was done with OpenGL and could finally move on to Vulkan but NooOoO i gotta go back to OpenGL just for this and then move on. In a way I'm going to be stuck on this mini project just to understand how this works but you gave me more insight to add another tool under my belt so to speak. Cheers~ 👏👏👍👍
@NunyaBizznezz6969
@NunyaBizznezz6969 5 ай бұрын
I did find that interesting
@drdca8263
@drdca8263 5 ай бұрын
Maybe I’m underestimating how fast computers are, but, when you have many particles, how do you make this run at a reasonable speed? Do you do processing on the GPU? Do you have some sort of “this particle’s environment hasn’t changed, so don’t run its code, as it will stay the same” thing going on? Like some kind of “this is where stuff changed last frame” mask?
@johnjackson9767
@johnjackson9767 5 ай бұрын
CPUs are fast enough to handle this. Moving this to the GPU would be the best way to make it scale.
@drdca8263
@drdca8263 5 ай бұрын
@@johnjackson9767 Thanks!
@gobro3900
@gobro3900 6 ай бұрын
What you've created is awesome! I saw a youtuber mention your framework in his video, and I wanted to try it out and well... I have been pleasantly surprised :D. However, I've noticed that the documentations site seems to be down and that the "math.md", "platform.md" & "utils.md" seem to have no documentation in them whatsoever. Is it supposed to be like that? Probably not lol
@xylvnking
@xylvnking 6 ай бұрын
I'm never gonna do this but i like to watch
@musashi542
@musashi542 5 ай бұрын
lmao
@StevenOfWheel
@StevenOfWheel 6 ай бұрын
Does anyone know the name of the nuclear reactor sim game which flashes briefly for 2 seconds at 0:11-0:13?
@johnjackson9767
@johnjackson9767 6 ай бұрын
Powder Toy
@StevenOfWheel
@StevenOfWheel 6 ай бұрын
@@johnjackson9767 Thank you!
@jb14_99
@jb14_99 7 ай бұрын
Do you think this could be extended to 3D?
@NEO97online
@NEO97online 2 ай бұрын
yes, it would be like Minecraft. just with a higher tick rate and very small blocks
@Halleluyah83
@Halleluyah83 7 ай бұрын
Супер!))
@maixicek
@maixicek 8 ай бұрын
Very cool!
@G0RSHK0V
@G0RSHK0V 10 ай бұрын
Noita also have ridgid body physics, which is impressive. Even more impressive is the fact that early versions of Noita had surface tension for liquid, so, for example, water in icy biomes formed icicles. And on top of that, Noita uses multiple cores to calculate physics
@johnjackson9767
@johnjackson9767 10 ай бұрын
Absolutely, it's a fantastic showcase of novel solutions to complex problems.
@Sbenbobb9
@Sbenbobb9 10 ай бұрын
Both these forms of media are so rare and I love that you brought them together. I love Noita, and the Powder Toy I've been playing since I was a kid.
@chaquator
@chaquator 10 ай бұрын
i wanna see all of this as pixel shaders, would be an interesting challenge, especially more iterative procedures like accounting for velocity and gravity
@johnjackson9767
@johnjackson9767 10 ай бұрын
I would rewrite this in compute shaders, or at least double buffer and multithread it.
@Gamester-vy1qp
@Gamester-vy1qp 10 ай бұрын
This is so cool!
@oamioxmocliox8082
@oamioxmocliox8082 10 ай бұрын
;))
@sushismitcher225
@sushismitcher225 10 ай бұрын
This is sooo cool. I made it with python and Pygame, and it works perfectly. It game me so many ideas for games. You just earned a sub.
@andrewalexart
@andrewalexart 10 ай бұрын
8:40 "and this is easy enough to do!" me: fuck it... :D
@ryanben3988
@ryanben3988 11 ай бұрын
I love it❤....and I want to make one that can work on embbeded devices, and a starting point would be to take your code and run it on the GPU to increase performance.
@mworld
@mworld Жыл бұрын
Nice, but tabs suck and should be banned in source code.
@johnjackson9767
@johnjackson9767 Жыл бұрын
lol lmao even
@mworld
@mworld Жыл бұрын
@@johnjackson9767 I've worked on large code bases that had a mixture, it looked horrible. Not to mention how bad it looks in diffs.
@Kenbomp
@Kenbomp Жыл бұрын
Didn't explain very well the actual code to what the brush paint did
@segsfault
@segsfault Жыл бұрын
it just puts pixel wherever the mouse is clicked...
@shankar4510
@shankar4510 Жыл бұрын
can you tell me where you started ? your programming history ?
@jorgegimenezperez9398
@jorgegimenezperez9398 Жыл бұрын
Just wow
@ppok2490
@ppok2490 Жыл бұрын
I think it will take me some few re-reads through the source code to actually wrap my head around it. You have definitely changed my perspective on macro usage in C, particularly on how flexible you can make your code (although something tells me this might lead me down to another unwanted rabbit hole of excessive macro use). I can see how this is a "poor" man's reflection system though, cheers! XD
@dandymcgee
@dandymcgee Жыл бұрын
Awesome! Looks fantastic.
@markbeaver4806
@markbeaver4806 Жыл бұрын
Fair job My fair thumb up for you
@WarClonk
@WarClonk Жыл бұрын
Hey man, I was interested in developing a game with gunslinger however since it is written in C and it is a header only library, I cannot use it in C++. Or is there maybe a way to make it work, like compiling C and then linking it like a normal library? Otherwise I guess I will have to do some OpenGl Sorcery because SDL doesnt seem to be capable to handle my task. Anyway, I absolutely loved your video on pixel physics. I have seen lots of games with it and always wondered how it works. I Hope you continue to make similiar videos seeing how popular it was!
@johnjackson9767
@johnjackson9767 Жыл бұрын
You can use gunslinger for a c++ project. I have made sure that it compiles for both. There's are example projects in the gs_examples repo that compiles for c++ as well if you want to look at that.
@cs_calzone
@cs_calzone Жыл бұрын
the browser and mobile game "Powder Game" by Dan Ball was my favourite example of a particle physics simulation before i played noita. to my knowledge its the originator of games like "the sandbox" on phone. the game itself has very cool interactions and particle simulation physics, relying very heavily on the showcase of wind and explosive force. its really facinating and i reccomend a mess around in it
@linusaxelsson3940
@linusaxelsson3940 Жыл бұрын
Do you have any thoughts on player interaction/physics with this?
@mrbenjiboy9527
@mrbenjiboy9527 Жыл бұрын
I wasted so much time on powder toy as a kid
@mitchwar2065
@mitchwar2065 Жыл бұрын
This is very impressive!
@bibliusz777
@bibliusz777 Жыл бұрын
this is disappointing
@johnjackson9767
@johnjackson9767 Жыл бұрын
Seems to be the consensus
@mr.fishfish570
@mr.fishfish570 Жыл бұрын
I haven't watched the video yet (sorry lol) but that game... The Powder Toy... Let's just say I'm glad you showed me
@maxpoppe
@maxpoppe Жыл бұрын
why not iterate over the particles instead of the entire grid, which has empty cells?
@johnjackson9767
@johnjackson9767 Жыл бұрын
You could do that with a sparse chunk system, but that was more involved than I wanted to get into for this.
@pixellino5009
@pixellino5009 Жыл бұрын
Man, Where's your discord ?
@thomasrosebrough9062
@thomasrosebrough9062 Жыл бұрын
6:16 isn't smoke just *water* upside down, not sand?
@lmao_ur_mum
@lmao_ur_mum Жыл бұрын
7:02 average sublime user