Lol, no, wait - this doesn't work super well for chunks that can change without the player moving. Like, if you stood still watching people demolish a mountain, it wouldn't start drawing anything behind it until you moved your camera. So, Maybe I want to mark things both as 'in frustum' or 'out of frustum', and update that when the camera moves, while also iterating chunks that are in frustum regularly, even if they weren't drawn last frame and the player didn't move their camera? :/
Conversation
Notices
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:43 JST Angle -
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:30 JST Angle Alright, I have collision working *mostly* correctly, though sliding along walls doesn't always work properly and it's possible to get stuck in corners. Not much to look at, but I was also poking at worldgen. Made things a bit fancier and fixed some bugs - including one where I had it generating the same chunks multiple times for no reason. Runs way better, now that I have it not doing that. :/
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:31 JST Angle Working on collision detection! And making progress. Though I don't have it working properly yet, or anything. XD
Adrian Cochrane repeated this. -
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:32 JST Angle Added support for variable sizes for entities. Think this is probably sufficient for entity rendering for now, and I should start working on collision? Either that, or I should go for full skeletal animation. :/
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:33 JST Angle Went ahead and formalized a dev cycle on the wiki. Not entirely sure how I feel about this? It feels like it'll be necessary once I have enough people, but I might be jumping the gun a bit. We'll see. For now, anyone who feels interested in participating, feel free to DM me! XD
https://gitlab.com/AngularAngel/omnicraft/-/wikis/Dev-Cycle
https://gitlab.com/AngularAngel/omnicraft/-/wikis/Current-Dev-Cycle
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:34 JST Angle Okay, definitely going to start working to make this an actual playable game. I just fixed a couple of annoying bugs, so, time to start looking at entities. Either getting rendering to a place where I'm happy with it, or doing collision detection and some basic physics? Not sure. :/
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:35 JST Angle Messing around, applying my new procedural noise textures to soil, as well as stone. Thinking I should start seriously working to make this a game other people can actually play? Probably want to focus on entities, if so. Getting collision detection and throwing together a basic little FPS would probably be pretty easy? :/
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:36 JST Angle Added some surface noise, and applied the noise to specular and roughness material properties, as well as color:
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:37 JST Angle Working on my textures again now, because one of my friends was experimenting with procedural textures. Right now I'm mostly just adapting his code, but I hope to make my own contributions soon.
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:38 JST Angle SBuffer Drawfinisher: 0.080896 ms elapsed
Emission Lighting: 0.248832 ms elapsed
Directional Lighting: 4.871168 ms elapsed
Point Lighting: 4.539392 ms elapsed
Bloom: 1.209344 ms elapsed
Tonemapping: 0.0768 ms elapsed
Outline Shader: 0.001024 ms elapsed
Block Outline: 0.001024 ms elapsed
Debug Window: 0.016384 ms elapsed
Outline Finisher: 0.001024 ms elapsed
HUD: 0.024576 ms elapsed
Render Loop: 19.68128 ms elapsed -
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:39 JST Angle Render Clearer: 0.014336 ms elapsed
GBuffer Drawstarter: 0.011264 ms elapsed
UBO Manager: 0.001024 ms elapsed
Skybox: 0.200704 ms elapsed
Frustum Setter: 0.0 ms elapsed
Surface Geometry: 0.421888 ms elapsed
SBuffer Drawstarter: 0.024576 ms elapsed
GBuffer Drawfinisher: 0.002048 ms elapsed
Transparency Sorter: 5.40672 ms elapsed
Surface Fragments: 1.942528 ms elapsed -
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:40 JST Angle I went ahead and did some detailed profiling, seems my directional and point lights and my transparency sorting are the big performance problems. Not much I can do with the directional lights, I think, and I'm not sure how to approach the transparency sorting, but I have some ideas for the point lights.
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:41 JST Angle Alright, I implemented it. Seems to work pretty well? Hard to be sure. :/
-
Angle (angle@anticapitalist.party)'s status on Friday, 13-Jan-2023 07:31:42 JST Angle Yeah, I could use the method I described above with frustum culling for determining if a chunk is in frustum, and then use it again with actual bounding box draws periodically for checking if in frustum invisible chunks have become visible... :/
-