3D / Game Development / Programming Thread

This is where I’m at so far… I’m using a very geometric high school algebra approach to map the projection… leaves it all piecewise and quadrant/octant specifics… lots of conditionals ~ 250 lines of code so far. Prolly a lot of optimization different things to try.

But it should amount to height-mapping a sphere. Mapping the UV space to the sphere’s surface following the scheme in the diagram. Potentially storing height data back into the image file.

If I use one color channel for height… then the other two (or 3 if I use the alpha) can be used to store procedural generation data… like surface type via index… or a combination of more physical gradients. hardness, thermal capacity, etc… not really there yet at all. Doing all this so I can finally get an environment to play test character movement.

I think I might be backwards… that after years of thinking it’s simpler to just simulate a planet versus building a small box environment… any rate I have 3 3days off and this is my only goal.

2 Likes

That’s cool are you making a simulation?

2 Likes

It’s more like a scaffold for different simulations to run on… On screen, off screen, real-time, or background. Varying degrees of detail… sort of cross pollination procedural generation. Or in other words I don’t really know yet. If fun game play arises organically I might change my direction and try to package something to sell.

Really I just want a virtual environment to run around on.

yo mars hows cookie bears going? would be cool to see some updates about it

1 Like

UVSphereProjectionAlpha

Some of the math or method might need tightened up… effing floating point rounding… irrational constants… or just vector rotations. The projection is just a bit off in places… though I’m happy with it.

Gotta come up with the algo to triangulate into mesh elements… also pipe in a height map to scale the vectors.

UVSphereProjectionAlpha2

2 Likes

nice work ! such impressive things you guys are doing, i’m just doing boring web stuff. makes me think of a one of those fancy audio spectrum visualizers.

1 Like

That vibe is there for sure.

To highlight the bug/method shortcoming:

The second image is just a bit off. You can see how clean the first image looks… The computer handling the math as it does seems to do a rotation just a tad bit short.

I’ll have to think on it for a while… If I can’t improve the method I might just add in a small correction. I don’t like straying away from the raw math of it though. It’s like 1000th of PI… Maybe I should sort it out on lower resolutions.

2 Likes

bahaaaaaaaa… it’s gliiiitchy

UVSphereProjectionAlpha4

UVSphereProjectionAlpha3

4 Likes

Hey POET, I haven’t been working much lately. Sick with severe anxiety and the doc won’t help. :confused:

1 Like

damn sorry to hear that man, anxiety sucks :confused:

1 Like

looks very cool! must be a complex thing to build :open_mouth:

2 Likes

I’m working on some environment/architectural stuff

Haven’t textured anything yet, will start using substance designer to create some textures. I also want to try out a texturing method I’ve never tried before: detailing a square plane in Blender with actual geometry, then baking it into a texture to create a trim sheet.

@Azley I think my little vehicle is unique too but it’s too random. There’s too little sense of functionality for my liking. That’s why I reminded myself yet again that reference reference reference is so important, and I didn’t do that for this one

With these things, sometimes I wish I had a mechanical engineering degree lol, it would help.

3 Likes

made a base for a trime sheet inside blender:

Baked height info to a height map:

Now I will take this into Substance Designer and see if I can add some cracks, imperfections, color etc

3 Likes

Painted it in substance painter then brought it into substance designer for the final details. It was a lot of fun

2 Likes

That… is cool

1 Like

Got it:

UVSphereProjectionAlpha5

Now I’m ready to get a heightmap set up to wrap around it.

2 Likes

second trim sheet texture coming along

1 Like

You got skills homie.. Looks good

1 Like

thanks! I’m still a bit confused when adding effects in substance painter, because you need to add it to a height map, not normal. So in this one the height map and normal map is both in effect on the rock tiles, overlapping eachother. I guess I could disable the normal map, I don’t think it would matter. Then I can use effects on the height and export it, and the exported normal map will look the same no matter if you work with height or normal in the substance painter file? Maybe, not 100% sure

I dont want to pretend to know exactly what you’re talking about… You could look at the history of bump-mapping. Normal maps are unofficially bump mapping 3.0.

Heightmaps are not normally texture effects. They’re a texture loaded into a geometry pipeline that change the actual mesh. Normal maps are an array of vectors that which represent the angle of the “virtual” surface… When can be used to create an illusion of depth variance… All its really doing its telling the gpu what the angle of reflection is at any given position in a texture.

So baking a heightmap out would be better used to recreate the geometry. A normal map is all you would need to convey a sense of depth from most angles.

Displacement maps is another term for height maps… Kind of more generalized.

I mean if the shader/engine/whatever setup you got has a slot for height maps they may have some shader that makes use of it.

In most cases though real-time rendering just use normal maps… Perhaps you’re overcomplicating your work flow.

There is also another technique out there. Paralax mapping… But its pretty jank around the edges, literally.

I dont know if any of that helps… Might be worth looking up some of the terms for yourself.

I was looking forward to doing some coding today… But got hit with insomnia… Now I’m just dismissing everything I can and just chilling until sleep sets in. (Super annoying was on a 3 day streak of getting to sleep at the same time… Then just having a day off from work and my brains like… Yeah f#%$ that.)