BOTW-style Physics overhaul & Modular Inventory! [Prismatica DevLog #14]
HTML-код
- Опубликовано: 30 окт 2022
- Help me & yourself by getting a free month of Skillshare right here! skl.sh/prismaticadev10222
Hey Prismaticrew! It's been a hot minute since I recapped what's been going on with Prismatica. In this video we're looking at a tonne of things - physics collisions, physics sounds, collision damage, buoyancy physics, levitation physics, and our modular spatial inventory!
Hope you enjoy :)
------------------------------
Patreon: / prismaticadev
Twitch: / prismaticadev
Discord: / discord
RUclips: / prismaticadev
Twitter: / prismaticadev
------------------------------
Computer Specs:
Ryzen 3900x 12-core CPU
MSI Geforce RTX 2080 Super
64GB Corsair RAM
One of those fancy nvme m.2 SSD's
Programs of choice:
Unreal Engine 4 - (Game Dev)
Blender 2.8 - (Animation and Modelling)
OBS - (Video/screen capture)
Davinci Resolve - (Video editing)
Adobe Photoshop - (Graphics and Texturing)
Quixel Mixer - (Texturing)
ProTools 11 - (Compositions and mixing)
OldSchool Runescape - (Chillax time)
Filmed using:
Sony A7s2 body
Sony 24-70mm f/2.8 GM lens
Yonguo YN360 LED's for colour
Yongnuo YN760 chip LED w/ Godox softbox for key
My lovely cats names are Boycat, Girlcat and Ladycat :)
Wow! Prismatica is easily my most anticipated devlog series. I'm glad you're taking experimenting around with a bunch of stuff. It will really make your game unique.
Happy to hear it :) I just love letting my imagination run wild haha
I just binged this and I have to say, this is the best Unreal Engine devlog series on RUclips. These systems are so deep, it makes me excited to see the final result. It already feels like a sandbox where players can create their own enjoyment out of just playing with the systems.
What a breath of fresh air to find a devlog series where the developer is a properly skilled programmer
I wouldn’t say “skilled”… just persistent and has too much free time :P
Wow this game is going to be the most sophisticated ecosystem of any game yet. Insane that you're doing it almost all by yourself!! Keep up the good work.
Haha hopefully the complexity doesn't make it explode
Can't wait to observe the progress been done, and the meaty explanation of the systems that follows😁
About those print screens:
The print screen node has a "key" value on it (this is a new-ish feature.) If you put a name into that key, the updated value will occupy the same slot, instead of scrolling by so fast that you can't read it.
"speed"
"offset"
Etc. They won't move, they'll just update that same spot over and over again.
Wow that inventory interaction is super creative. Your game is gonna be a mega hit and we can all tell just by the little special intricacies you have crafted and applied to your game. Us other developers and learners will be referencing your shit for years to come.
Pris, we want to see all systems on a deeper level. You and your team are creating something unique and on top of that, it's been a truly helpful learning experience for me and others! Keep up the good work y'all!
Haha if only I could fit it all in to one video :P Eventually I'll do some deeper dives in to how more stuff works on a code-level
Im so glad that I searched up how to make stylized grass and found you! This game has come so so SO far since I started watching! Its really really amazing what you and your team have done. Really im totally amazed on how GREAT this project looks! Keep up the good work :)
Thanks for sticking around John - hope you're looking forward to the next demo!
I don't know how you do all of this. Literally magic. Cant wait for the release
Glad to hear you're excited - hopefully a tiny demo by the end of the year :)
A true inspiration for us solo devs out there. Amazing progress!
Thank you! Happy to hear it :)
This game is turning into a benchmark for how all other games should implement their specific systems. Crazy.. I honestly don't know how you do it, thinking, designing and debugging these things is extremely exhausting.
Not exhausting, exhilarating! Doing it all live on stream is a good motivator as well
This is the highest echelon of polish game I've ever seen a game. And everything is so extrapolated and compartmentalized that "it just works." Its quite amazing to see. Great work! Been watching since the beginning and its incredible every episode.
This isn’t even a game anymore it’s just some sort of insanely well made physics sandbox
Exaaactly ;) Perfect way to build a game!
Honestly door simulator could be its own game
Wow, this is incredible! I'd love to see a tutorial on the whole physics interaction system, including grabbing and dragging things with control rig, I've been trying to do that for months but keep having issues with it, and since physics and Control Rig hand IK is vital for a lot of my games mechanics I've been stuck making little progress
Awesome to see how far it's coming! Would love to see an in depth video on the landscape / surface data system and how it ties in with other components. Thanks Charlie
Will do :)
25:20 the rpg outward plays with this idea a bit. Most of your inventory is carried in a backpack, which affects how you roll and your movement speed. When you enter a fight, you usually drop that backpack for greater freedom of movement, but since there's a decent chance you may want to flee from certain fights, carrying a ton of variables this way carries a big risk.
Would love to see a quick dive into how you do your physics sounds!
Sure thing!
When you talk about the backpacks slowing you down I had instant flashback to playing Outward dropping my backpack on the ground before fights and picking it up after.
Amazing work! I really wish to have an entire course teaching me those systems and how they are integrated together Thank you so much.
I just discovered your channel and it really gives me Exanima vibes. I LOVE the Runescape effects and sounds as well lol
Excited to watch more of your videos and learn more about Game Dev!
Dude you're so talented, all your videos are full of content and it always feels so polished, hope you really make it through with your game !
Cheers Anthony :) Glad you're enjoying them
ADDING PRISMATICA TO MY CLASSROOM'S WALL OF "GAMES MADE WITH UNREAL ENGINE" BOARD
"control rig tutorials coming"
INCREDIBLE
@@LookItsCollin Heheh get excited! Control rig is really cool
Love all the cool features you're adding to the world. Very excited for all your tutorials.
Thanks Jeff. I'm excited to make them
Would be great to see more about how that inventory system works.
YES PLEASE!
I was watching the Prismatica devlogs through the playlist for them, and I was so confused by the previous video on the list because it was Daniel Trashers video "i can play anything by ear" lmao
HAGAHA no idea how I might have added that to the playlist. Probably a cat stepping on my keyboard
@@PrismaticaDev Well it was certainly a surprise that made me laugh 😂
You are super inspiring!! Amazing work, keep it up :)
Brilliant update, kudos to you and the team!!
Kudos to you, my man!
Awesome video!
PD: I can't with the "Eyyy dickhead..." print in screen all the time HAHHA
Hahahaha I forgot to turn it off. I need to purge a lot of my print strings!
You are a one man army its insane to me that you are making this much progress with the team size that you have, i was following from the start and the amount of progress that you made is nuts, both with the game and your skill for game development gg wp 😀
Cheers Joe :) Glad you're enjoying the devlogs, hope you find them useful as well!
Feels like a proper "next gen RuneScape-esque" game, something I'd die to play 🥺
Glad you're catching my vibe haha
love your work keep going like that, I cant wait to play your game!
Thanks Matias :)
I found this channel in the search for tutorials, and that's what I subscribed for. But now I'm just hyped for the game :D just wanna find cool loot, crush enemies with crates and doors. It really sparks the imagination
Glad you're looking forward to it :) That's exactly why I designed everything in this way, so that the possibilities are endless haha
Also, flying carpet mechanic should totally be in some dungeon puzzles
I'm very interested in how you solved the physics and use ControlRig to interact with them so fluidly. This is an issue I see asked A LOT on the Unreal Engine subreddit and forums, why their objects despite being very dense are sent into the stratosphere.
As for the progress, amazing. This looks a lot like my dream game, something akin to Outward which can be played in co-op but physics-based. There's just something about the idea of a little janky physics-based co-op adventure game where you can fight big bosses that have the ability to yeet you across the map or something similar.
Great work and great devlog as usual! :D
The way I went about it was to make control rig not actually interact with the physics in any way - all the physics is done entirely through code and doesn't need the animation to operate - the IK just sits over the top as a nice visual. The main thing is to just not let the mesh and physics objects block one another
@@PrismaticaDev I really, really need to look into Control Rig some more - seems super useful. It's really quite amazing how stable you've been able to get all this despite being so heavily physics driven. Absolutely love it!
Ooooo, I love your devlogs for the interesting systems you make. Really inspirational and encouraging for creative thinking.
The eeeeears 😂
Floppy bois
This is intriguing. BTW there's already a game on steam called Prismatica. It would be good to get a steam page up for the game so people can add it to their wishlists.
Great content as always! Awesome progress. (Love the "Activate Windows" watermark 😂.)
It's a vibe
This game is going to have a level of emergent gameplay beyond anything else I've seen. You could botch everything else (not that I think you will), and the overall gameplay sandbox would still carry it to greatness. Even the old Patreon demo which is super out of date feature-wise now was a hoot. The test level could make a great demo v2 😉
It could be cool to have a mount in the game, like a horse or a mule that you can use both to walk around and to store your stuff.
Or, you know, a very unfortunate person :P
@@PrismaticaDev
This is even better :)
You're very inspiring. I will pickup something I like and make it as comprehensive as this. would be very satisfying :-)
Great update and great progress! Can't wait for more. Maybe even an early demo sometime?
Yep yep - hopefully by the end of the year
My favourite logistical decision will be tearing off my backpack and all my armour and running away from a battle
Hahahaha well I mean, if it keeps you alive then it keeps you alive!
Game looks really good, excellent work :)
Cheers David!
I think I'm in love with this game.
Love me some good ol' PrintStrings that start with "eyyy dickhead", loved the video and the progress on Prismatica is crazy- super exciting stuff!
Gotta get my own attention so I fix bugs haha
I saw your video on metasounds too, but I would LOVE to see some of those metasounds you built, I'm very curious about how you were able to use the metasound for surface hit SFX you shown for the sword and the procedural sound on the door.
Damn this looks so cool
oh metasounds nice, i'm up to that!
Get keen!
This guy is talented!
That flying carpet thing is a feature, not a bug.
Hahahaha definitely. Deep lore!
Thank you for all your videos. Your soo amazing. I have one request. If you don’t mind. Do a video about motion Matching please 🙏🏼
I think we're are getting first 3d AAA game with solo developer
metasounds tutorial? Yes please.... Control Rig tutorial?! YES YES YES PLS. Awesome devlog man! Have you looked at the "Physics Control Component" in preview yet? Also, did you know they Unreal already has buoyancy built in to the water system?
I haven't looked at it, but I might check it out!
And yes, but my system allows for buoyancy on uneven surfaces and non-planar water shapes (which "might" play in to some parts of the game. No spoilers!!)
I'm not a gamedev (yet), but each time I see somebody touch upon the Inventory system, they seem to be frightened.
I feel lots of evil spagetti-code awaiting me...
Haha I think people just get scared because it's a big commitment that requires a lot of thought about what it needs to achieve. Once it's implemented it's hard to change
Can you do a tutorial for grabbing physics cubes and moving them around? In my project, I can snap(attach) a cube to the character's bone, but only if physics is NOT simulated. Then I need to figure out how to create targets for the character to reach for the box & grab it...
My advice would be to use "Add Force" while it's simulated instead of just attaching it, or using a Physics Handle component
27:34 another mystery for me is how none of those swords are janking and flying off the screen. Do you have a separate low-poly collisions for the tips of the swords? Every time I spawn something sharp/tiny, it just goes through the ground even with CCD on.
Yep - everything in the game uses the most simple collision possible. It's much cheaper that way and prevents jank
with your gore system, I thought of tattoos for more customization, if you add this, I will be very happy, thx(And I also like the characters in the "no clothes (get it?)" state are similar in TBOI)! 🤞👍
so good
You are!
I wish you would make a video showing the creation of the character and the implementation in UE
Check out DevLog 11 :)
@@PrismaticaDev thanks man;)
dang so many magical system in one video, also that 'eyyy dickhead' log
Hahaha I forgot about that one :P
take a shot everytime prisma sais "it just works"
are you using chaos for all the physics stuff? Really want to know how to make those floating platform
Unreal 5 is exclusively run on Chaos now, so yep. However all the logic is done using the standard "add force/add impulse" functions that are available in UE4's PhysX
this looks amazing, i'm curious how well does it run?
I get 120fps on my machine, but others on the team are getting a good 60fps on a gtx1070. Definitely a lot of room for improvement down the line, though haha
@@PrismaticaDev nice, that's really impressive as i've played games with similar physics systems (e.g. exanima) and they tended to run very slowly even on a mid-range machine
So much cool stuff, I'm letting you know I would like to watch tutorials on all things character physics.
Anyone: One specific problem I've got is when I throw physics object on terrain it can fall through the terrain, because it seams to me that the terrain is calculated as a thin mesh, and for example when I throw my things on a thick box collider - collisions work ok.
I think the dodgy landscape collision is a bug - it used to work fine in UE4 but I've also found that smaller objects fall through sometimes
This game is gonna be epic.
Would it be possible to make a video going further into the system for the different grounds (grass,dirt,sand,stone). How you detect on which one you are?
I sort of dive in to one of my methods in my "physical material mask" video (I forget the name of it but it's a recent one) for meshes that have multiple "materials" in the same material slot. For the rest of it though, you can set the Phys Material of a mesh/material and then retrieve that info from a line trace or Hit event. You can use an Anim Notify (I have a video on them) on your walking and running animations to do a trace to the ground and find out what surface you're on
This game will be brilliant.
Please release demo or something so people can play around with systems in testing area.
Call it Exanima grab.
Is it possible to cut the straps on a backpack with some well placed slashes?
That's the plan! I'm going to need a lot of test feedback for all the complex stuff haha
Not currently, but it wouldn't actually be very hard to implement with the way I handle durability at the moment (each section of a piece of equipment has its own durability, eg. a shirt might only be damaged on the left bicep, which would make it ineffective in only that area)
16:15 I think you mean "new feature"
Hahaha ship it
Let's financially help Charlie in order to afford windows activation.
30:25 :(
All around me are familiar faces, worn out places, worn out faces...
This is real life simulator lol
Basically hahaha
Except you don't have to risk the dangers of sunlight
@@PrismaticaDev need flies and mosquitos constantly annoying the character
Awesome lol
Genshin impact, botw feel with great gore simulation sounds euphoric
Hey, haven't followed you in some time, if i remember correctly this game is going to be multiplayer, right?
Are you designing you physics based systems with that in mind?
I had a lot of trouble replicating physics so that it will look nice on all clients in all edge cases, and i was doing it only for visuals.
Looks like your game mechanics rely heavily on physics simulation results, so is it going to be authority based and then replicated for all clients?
How to avoid Clipping on the equipments?
Good weight painting and a lot of time and care :)
I expect to see simulated AI consciousness for NPCs by devlog 20
Inventory and equipped system are quite complex. I've tried a few solutions. Have found something which is flexible enough while simple enough. what data structure do you use for the inventory containers and the equipped items? Very interested in how your architecture looks like
It's all just uObjects referencing other uObjects. All equipment and containers are just ItemObjects that have an array of Contained ItemObjects. That way we can have items within equipped items, and items within those items as well :)
@@PrismaticaDevSorry, in my comment, I made a typo. I meant "Have NOT found something which is flexible enough while simple enough". And, Ah,OK, you're using arrays to store actors spawned by class basically. Then my only fear with this approach is it gets really complicated when we have to do lots of loops and nested loops. You project is mixed c++ and blueprint? then less pain.
@@lolaswift111 not Actors, just Objects. And it's storing a reference to the other instanced (constructed) Objects, not to their class etc. I also only use Blueprints and haven't had any issues with loops and stuff. Each itemObject also contains a reference to a Data Asset which has all of its static data (meshes, textures, values, etc) for when it has an Actor representing it
@@PrismaticaDev Ah. I'm gonna try. and btw, if you don't mind another question. when you equip something, you do Attach Actor to Component? When you drop something on the ground, did you destroy the component or simply detach it? If you destroy it, what is your code logic because simply using Destroy Component won't work if you're not the owner of the component. I first get the owner, then destroy it. I'm just wondering how experience developers like you do it. Thanks again.
@@lolaswift111 If it's a piece of armour or clothing that is being equipped, they get Merged to the character mesh (the entire mesh gets regenerated as to only use 1 draw call - check Skeletal Mesh Merging plugin that is default in UE5)
If it's a weapon or any other item (including armour or clothing that is dropped or just held in the hand) then they're their own Actors which get Attached to the character as needed. The ItemActors are essentially just visual representations of the ItemObjects. As for destroying the ItemActors (eg. putting them inside a backpack) I just use the DestroyActor function after a reference to the ItemObject has been added to the backpack's "Contained Items" array
😍😍😍
"the full clacker"
Activate Windows, Go to Settings to activate Windows bruh
No way, not my precious watermark haha