Duke4.net Forums: Bugs & Problems - Duke4.net Forums

Jump to content

  • 38 Pages +
  • « First
  • 3
  • 4
  • 5
  • 6
  • 7
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

Bugs & Problems

User is offline   Zaxx 

  • Banned

#121

View PostMark., on 25 July 2017 - 11:05 AM, said:

Whoever chose to use a 10K barrel was foolish. Just to verify I spent a few minutes making a very low poly ( 366 faces ) test barrel. I would imagine a very nice detailed version could be made with 1-2K. So when picking a model for conversion to voxel, or just making models to use, be realistic in the poly count.

Yep, this I agree with: 10K is a lot more than what an optimized model should be for a game like Blood and I'm sure that's why the fps tanks. Hell, even the bullet casings look a bit too detailed for the engine to pleasantly handle them at this state. Detail is nice but if it affects the performance this much no one will use additions like this.

This post has been edited by Zaxx: 25 July 2017 - 12:12 PM

0

User is offline   Kyanos 

#122

View PostMark., on 25 July 2017 - 11:05 AM, said:

Whoever chose to use a 10K barrel was foolish. Just to verify I spent a few minutes making a very low poly ( 366 faces ) test barrel. I would imagine a very nice detailed version could be made with 1-2K. So when picking a model for conversion to voxel, or just making models to use, be realistic in the poly count.


The 10K poly model is actually from a voxel, at startup the engine runs a Ken S function in Polymost called vox2md3 or vox2poly... anyways that makes poly models out of voxels for OpenGL renderers, only software actually renders voxels. The only "fix" is to further optimize vox2poly (good luck) or make models to be used in place of voxels (that look like the original cubey voxel, but use less tris than the poly2vox output)

This post has been edited by Drek: 25 July 2017 - 12:20 PM

0

User is offline   Mark 

#123

ok
0

User is offline   Kyanos 

#124

From mdsprite.c in jfbuild/src

static voxmodel *vox2poly ()
Spoiler

0

User is offline   kimec 

#125

View PostDrek, on 25 July 2017 - 12:17 PM, said:

The 10K poly model is actually from a voxel, at startup the engine runs a Ken S function in Polymost called vox2md3 or vox2poly... anyways that makes poly models out of voxels for OpenGL renderers, only software actually renders voxels. The only "fix" is to further optimize vox2poly (good luck) or make models to be used in place of voxels (that look like the original cubey voxel, but use less tris than the poly2vox output)

The only open question is the methodology of remodeling Blood's voxel objects. Should the new models retain "cubey voxel" design or can they be smoothened out? I, for one, would go for the cubey voxel design.
Another question is whether the tool used to create the new voxel models supports export to Blender or something similar. Was it fgsfds creating those? Was it MagicaVoxel he mentioned as the number one tool? Yep, it does support export to OBJ mesh.

Attached File  magica.jpg (45.79K)
Number of downloads: 39

So to recap, we would need:

MagicaVoxel: open source, free of charge
Blender: open source, free of charge
Volunteers: ?
0

User is offline   fgsfds 

#126

View PostMark., on 25 July 2017 - 11:05 AM, said:

Just to verify I spent a few minutes making a very low poly ( 366 faces ) test barrel. I would imagine a very nice detailed version could be made with 1-2K.

Except it looks like a polygonal, not voxel model.
I'm not making 10k polygon models because I want to (for that matter, I'm not making poly models at all). I'm making KVX voxel models that are later converted to md2 models by the engine. And them having 10k polygons is just how voxels work.

View Postkimec, on 25 July 2017 - 02:09 PM, said:

Should the new models retain "cubey voxel" design or can they be smoothened out?

Voxel models are "cubey" by definition.
0

User is offline   m210® 

#127

Quote

From mdsprite.c in jfbuild/src

When I said about 10k polygons, I mean vox2poly making it...without this method voxel will be 50k polygons.
0

User is offline   kimec 

#128

View Postfgsfds, on 25 July 2017 - 06:12 PM, said:

Voxel models are "cubey" by definition.

Actually, I would argue that voxel models are made of points by definition.

Anyhow, what I meant is that if we choose to create MD3 replacements for each and every model, we should still design the models to look as if they were created by vox2poly (with pixelated texture), which means not using smooth curves but intentionally make them look cubey. Does that make sense?

The source model data would still be from MagicaVoxel, but there would be a manual postprocessing step in Blender where we would reduce polycount and map textures, etc. Result of the postprocessing would be MD3. However, maybe curved models like barrel need to be handled a bit differently.

This post has been edited by kimec: 25 July 2017 - 11:20 PM

0

User is offline   fgsfds 

#129

Quote

Actually, I would argue that voxel models are made of points by definition

Not sure what you mean.

I had a similar idea. I'm not sure that the resulting model optimized by hand will be any better than the optimizations the engine already does, but it worth a try.

This post has been edited by fgsfds: 25 July 2017 - 11:53 PM

0

User is offline   Devon 

#130

View Postfgsfds, on 25 July 2017 - 11:46 PM, said:

Not sure what you mean.

I had a similar idea. I'm not sure that the resulting model optimized by hand will be any better than the optimizations the engine already does, but it worth a try.



Yeah it would suck if someone did loads of work and it was not needed in the end because the engine gets optimized.

I mean the engine is far from finished i guess and any potential work being made so early might be unneeded in the end as maybe the voxels will work well enough later on ?
0

User is offline   fgsfds 

#131

M210 is currently working on optimizing voxels rendering. I wouldn't do anything until it's finished. I might not be even necessary to do anything after that.
0

User is offline   kimec 

#132

View Postfgsfds, on 25 July 2017 - 11:46 PM, said:

Not sure what you mean.


Voxels are simply points with spatial information and color.
The BUILD's software renderer uses some kind of direct volume rendering. Obviously, the engine did not convert individual voxels into cubes made of polygons back in 1996. If it would, it would have ended up with 10k barrel in 1996 just as we do now.
So when Ken S wrote the newer Polymost, instead of solving the problem of how to do direct volume rendering on the GPU, chose to do polygon extraction from voxels (vox2poly), that is to convert the volume represented by voxels into small cubes made of triangles. Most likely direct volume rendering wasn't even considered an option with consumer grade GPUs back then (and it hardly is nowadays).

Therefore no matter what optimisation Alex will do for the engine, it will not change the fact that vox2poly will always extract some 10k polygonal mesh from the barrel.
The only way to extract less than 10k tris from the barrel is to implement or use different algorithm in vox2poly.
Or to make the model your self -> human based polygon extraction.
0

User is offline   Mark 

#133

I guess there is still something I don't understand that probably relates to the fact that I have no idea how you make a voxel item.
The barrel for instance. Does it have to be created by placing a boatload of discs on top of one another to build up it's height? If so, that explains the high face count when converted. Especially if hidden faces are not removed. If its not a bunch of thin slices piled up I can't see why a barrel voxel would get transposed to 10K faces. What am I missing?
0

#134

View Postkimec, on 26 July 2017 - 04:10 AM, said:

Therefore no matter what optimisation Alex will do for the engine, it will not change the fact that vox2poly will always extract some 10k polygonal mesh from the barrel.

That is so beyond wrong its insane. There are plenty of things that can be done to optimize that function. Furthermore there are plenty of things that can be done to optimize voxel rendering in build.

This post has been edited by icecoldduke: 26 July 2017 - 09:19 AM

0

User is offline   Striker 

  • Auramancer

#135

One possible method of optimizing voxel rendering in OpenGL, is to draw voxels using an array of points drawn back-to-front, instead of converting to models. Visually, this would look like voxels in software rendering. Not sure just how much faster that would be however.

This post has been edited by Striker: 26 July 2017 - 09:22 AM

0

User is offline   Mark 

#136

I may be wrong but my perception is that the people that want voxels are the same people that play in software mode only. Is there even a "market" for voxels outside of software rendering that makes it worth the effort to implement?

This post has been edited by Mark.: 26 July 2017 - 09:57 AM

0

User is offline   Kyanos 

#137

View PostMark., on 26 July 2017 - 08:14 AM, said:

I guess there is still something I don't understand that probably relates to the fact that I have no idea how you make a voxel item.
The barrel for instance. Does it have to be created by placing a boatload of discs on top of one another to build up it's height? If so, that explains the high face count when converted. Especially if hidden faces are not removed. If its not a bunch of thin slices piled up I can't see why a barrel voxel would get transposed to 10K faces. What am I missing?

The pixels are two triangles each. Simple uv maps and skins will cut a ton of faces from flat surfaces, but it's a shit ton of work, I've started doing it for the barrel. Can generate othoganal pics in magicavoxel then pick apart the .obj to cull unneeded faces and do a proper-er skinning.

As for the market, it's original game content that comes with Blood and SW, some may call it baggage...
0

User is offline   kimec 

#138

View Posticecoldduke, on 26 July 2017 - 08:17 AM, said:

That is so beyond wrong its insane. There are plenty of things that can be done to optimize that function. Furthermore there are plenty of things that can be done to optimize voxel rendering in build.

Sorry, I've tried hard but I simply cannot react to your comment in a technical and objective way. So let's do an experiment instead:

Load the barrel voxel model into your PolymerNG and report back the generated polycount and attach a screenshot of the generated wireframe model from the game. Just as Alex did. Easy-peasy.

PS1: I've diffed JFDuke vox2poly implementation vs your vox2poly implementation in PolymerNG. Do you think I've found some optimization not present in the original implementation?
PS2: What voxel rendering? Unless you are using the software renderer, there are only meshes made of triangles to be rendered.
-1

User is offline   Mark 

#139

I'm all for voxels for software renderer but I'm questioning if support for Polymost is even necessary considering the possibility few people that would make use of them.

This post has been edited by Mark.: 26 July 2017 - 11:49 AM

0

User is offline   kimec 

#140

View PostMark., on 26 July 2017 - 09:57 AM, said:

I may be wrong but my perception is that the people that want voxels are the same people that play in software mode only. Is there even a "market" for voxels outside of software rendering that makes it worth the effort to implement?

Rumour has it, that the market is being created as we speak. It should be VR and supposedly normal maps just don't have the right kick anymore when you're looking at them in 3D.

But this is all based on a controversial claim from a controversial Australian company Euclideon who have a controversial history.
0

User is offline   Mark 

#141

I suppose I should have clarified by saying the Eduke32 market, not just market meaning in general. My mistake.
0

User is offline   Kyanos 

#142

View PostStriker, on 26 July 2017 - 09:16 AM, said:

One possible method of optimizing voxel rendering in OpenGL, is to draw voxels using an array of points drawn back-to-front, instead of converting to models. Visually, this would look like voxels in software rendering. Not sure just how much faster that would be however.


You would be drawing a single plane per voxel? Maybe it could be optimized to do some type of culling too.

View Postkimec, on 26 July 2017 - 11:54 AM, said:

Rumour has it, that the market is being created as we speak. It should be VR and supposedly normal maps just don't have the right kick anymore when you're looking at them in 3D.

But this is all based on a controversial claim from a controversial Australian company Euclideon who have a controversial history.


Voxels are still ahead of their time. Hardware is not made "voxel friendly" either, a change is due.
0

User is offline   Kyanos 

#143

View PostDrek, on 26 July 2017 - 12:06 PM, said:

Maybe it could be optimized to do some type of culling too.

Ha, just looked up that euclideon company, they do voxel culling in their "unlimited detail" 3d "cloud point" (voxels) engine.

wiki said:



This post has been edited by Drek: 26 July 2017 - 12:12 PM

0

User is offline   kimec 

#144

View PostMark., on 26 July 2017 - 12:05 PM, said:

I suppose I should have clarified by saying the Eduke32 market, not just market meaning in general. My mistake.

Me being dumb.
0

User is offline   kimec 

#145

View PostDrek, on 26 July 2017 - 12:06 PM, said:

Voxels are still ahead of their time. Hardware is not made "voxel friendly" either, a change is due.


If you haven't yet, just check out what this guy is doing. That is 2 years ago. The youtube channel is also a must watch. First time I saw that was like WTF, is this even real?
0

#146

View Postkimec, on 26 July 2017 - 11:42 AM, said:

PS1: I've diffed JFDuke vox2poly implementation vs your vox2poly implementation in PolymerNG. Do you think I've found some optimization not present in the original implementation?
PS2: What voxel rendering? Unless you are using the software renderer, there are only meshes made of triangles to be rendered.

PS1: I never made changes to vox2poly. I've anaylized vox2poly before and there is room for improvement. I don't have my notes in front of me, but there is room for optimization.

PS2: When I was working on PolmyerNG I created a screen space voxel pass. I didn't have to use any tris. It didn't work for my purposes at the time because I wanted realtime shadows on the assets.
0

User is offline   Hendricks266 

  • Weaponized Autism

  #147

View Postkimec, on 26 July 2017 - 11:54 AM, said:

Rumour has it, that the market is being created as we speak. It should be VR and supposedly normal maps just don't have the right kick anymore when you're looking at them in 3D.

But this is all based on a controversial claim from a controversial Australian company Euclideon who have a controversial history.

I knew I recognized that name and Mark's post confirmed it. How many years of puffery and exaggerated noob-bait claims has it been without any results?

I am partly skeptical of the normal map claim. If the scene is properly rendered twice, once for each eye, there should be at least some effect, though for sure they will never be able to do anything with shape outlines. Even then, the 3D illusion should not be broken or anything like that.

But, this is getting off-topic.
1

#148

View Postkimec, on 26 July 2017 - 11:54 AM, said:

But this is all based on a controversial claim from a controversial Australian company Euclideon who have a controversial history.

You should not be citing them as a reference for anything. All they do is make bullshit, unfounded claims.

This post has been edited by icecoldduke: 26 July 2017 - 12:32 PM

0

User is offline   kimec 

#149

View Posticecoldduke, on 26 July 2017 - 12:26 PM, said:

PS1: I never made changes to vox2poly. I've anaylized vox2poly before and there is room for improvement. I don't have my notes in front of me, but there is room for optimization.

PS2: When I was working on PolmyerNG I created a screen space voxel pass. I didn't have to use any tris. It didn't work for my purposes at the time because I wanted realtime shadows on the assets.

So by -1 karma point you've actually meant, the barrel would translate to 10 K. That is enough to know.

PS1: Good for you.
PS2: Good for you. Also, well done!
0

User is offline   kimec 

#150

View PostHendricks266, on 26 July 2017 - 12:29 PM, said:

I knew I recognized that name and Mark's post confirmed it. How many years of puffery and exaggerated noob-bait claims has it been without any results?

I am partly skeptical of the normal map claim. If the scene is properly rendered twice, once for each eye, there should be at least some effect, though for sure they will never be able to do anything with shape outlines. Even then, the 3D illusion should not be broken or anything like that.

But, this is getting off-topic.

Six or seven. Yes, the snake oil...
0

Share this topic:


  • 38 Pages +
  • « First
  • 3
  • 4
  • 5
  • 6
  • 7
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options