This would be great for a openworld game with digging in it to keep the framerate 60.

https://blenderartists.org/forum/showthread.php?394591-Python-based-PIL-drawing-in-game-engine-and-viewport(eventually)&highlight=using+pil+to+draw+in+game
I would use 2000 planes that are vertical.And 2000 planes that are horizontal.

It sounds like you’ve got a plan for a game you want to make. Why not try some things and see if you can get it to work?
I’ve done some tests myself in the past of ideas that i thought would be great and found that they didn’t work out as well as I’d hoped.

Every so often I had a new idea and dug it up to see if it worked any better. Some times it does, sometimes it doesn’t.
But don’t get caught up dreaming of an ideal game which doesn’t exist and isn’t really possible in the GE. We can only do what is possible.

In the mean time try working on basic skills so you’ll be better equipped to turn your ideas in to reality.

I already asked for the code from blueprintrandom.That is the easiest way to test it.This is all about making a voxel game run at 60 frames in the bge.And making it as easy as possible.There is to many problems with moving vertexes.I want to keep pursuing my dream.

maybe this will help. some one made this texture paint code, but i put it into a shader and added some deformation.

Attachments

dig_test.blend (798 KB)

I prefer an actual digging sound myself.I was going to make cubes out planes by doing this.Filling in certain area’s of intersecting planes that are tranparent can make it seem like a plane.Even though it is not.

Attachments

blocker2.blend (525 KB)

is one plane representing 1 voxel face or is it shared over multible?
It shared over multiple.
How are you turning the represantation of voxel visible/invisible?
Drawing on the plane and erasing on it.
By changing the texture, a vertex or the whole plane?
By changing the texture or color from
transparent to opaque in some area’s.
How much data needs to be processed for each plane?
A plane’s worth of data plus its texture.
How do you plan to enable frustum culling when the planes are almost always in the view because of their SIZE.
No fustum culling just oclussion culling.

Cool

So how many pixels are we talking about?
If it is over 512x512 you can forget it, the pipe does not have enough throughput!
Its not that it can’t be displayed, its that it can’t be sent to the GPU without a 300ms spike and stutters after that.

I’d say 90% of a games performance comes from objects being fustrum culled.
By having huge, feature rich objects always in the view, your idea is broken by design.

But lets say you can something usefull with the 10% left.
oh wait, you plan on using occluders, so that is another -20% of wasted calculations?
So that sums up to about that you game is running at negative -10%?? :eek:
Probably some random poor African kids computer will lose fps to keep the worlds fps sum balanced when you open your game.
#/joke

Listen, voxels and chunks the most predictable things ever.
Occluders are meant for clutter like bottles and cats in a building.
But to hide chunks of voxels even a python script will outperform anything else.

There is noway to send it to the computer a 2000 cube row space at a time.

Would this work better?
I could render far away hills as different sized low poly triangles,trees as buildboards like grass and forget showing holes in the ground that is faraway.Use planes to represent ground.This would be a terrain lod for openworld digging videogames.

Terrain LOD is usually a bit more difficult than, complete mesh LOD. This is as terrain (as a single mesh) covers multiple areas with different detail levels. That is a problem on all very long objects (like a wall or a fence).

You can indeed create lots of tiles. Smaller ones near the camera and larger as more far away they are. You have to ensure they all fit together without visible seems.