Also Known As: banshee_revora (Steam) Joined: 15 Aug 2002 Location: Brazil
Posted: Wed Oct 17, 2007 9:12 pm Post subject:
SIBGRAPI 2007: Finding Surface Normals from Voxels
Introduction:
This article was sent and accepted to the Workshop of Undergraduate Work of SIBGRAPI 2007.
Finding Surface Normals From Voxels explains the Tangent Plane 8.0 auto normals applied in Voxel Section Editor III 1.37, except that the Tangent Plane 8.0 had some serious implementation errors, fixed on recent alpha versions of the program.
The Brazilian Symposium on Computer Graphics and Image Processing is the most important brazilian symposium in the image processing area, covering 3D, animation, modeling, medical, mathematical morphology, among other topics on computer graphics. It counts with the participation of many international scientists as well, from many universities around the world, to share the latest news in computer graphics in Brazil.
All articles must be written and presented in english. Undergraduate articles could be written and presented in portuguese or english. The article was writen in english, so visitors of PPM would understand it. At the conference, I've explained it in portuguese, because the public who checked it was brazilian.
One of the challenges in this article is that the original motivation of the article was to make an auto normals for a voxel editor that edits voxels from 7, 8 years old games. From this perspective, my research looks useless for them. However, voxels are also being used on games for mobiles, since most of them lacks good 3D hardware. Now, with this excuse, we made the article an actual research and interesting for few people over there, since the 99% of the scientists over there are not interested on mobile games at all, neither Red Alert 2 and Tiberian Sun.
This article was written for newbies in the area, since voxel isn't something that attracts many people by being considered obsolette, by many. For starters, here's a vocabulary that may help:
-> Voxel: a pixel of a volume.
-> Volume: A 3D grid of colours. (Imagine a bitmap, but in 3D). Unlike the Bitmap, a volume can be viewed from many angles. For this reason, each voxel needs an orientation (where it faces to), which is the normal (the same normal vector from physics). Volumes may have transparent pixels as well, but in Tiberian Sun, Red Alert 2 and most of cell phone games, this isn't used or interesting at all.
-> 3D Flood and Fill: MS Paint has a little feature called Flood Fill. If you flood fill a pixel, every pixel with the original colour of the flood and filled pixel will get the same colour. In this article, we use this trick to find the voxels that are part of the object.
And the first formula is 1 / Distance. The others are just the derivative computated from it.
Abstract:
Volumetric rendering is a way to represent 3D models on devices with a low use of 3D resources. It allows the use of high poly models, quick collision detection and rasterization operations, making them interesting for the games that are being created for the current generation of mobiles and pocket pcs that cannot handle OpenGL operations with a fast frame rate. However, the lack of knowledge of the shape of the object has proven to be a problem to preprocess its lighting. This short paper presents an heuristic that finds an approximation of the direction of normal vector of a voxel without the previous knowledge of the mesh, vertexes, edges and surfaces of the volumetric model where it belongs.
Joined: 26 Nov 2002 Location: Algae Colony On Mars
Posted: Fri Oct 19, 2007 12:16 am Post subject:
I may be a mere second year physicist but is that partial differentiation right? I tried doing it by hand and I don't think that 3 should be there at the top (and you have xc and xp the other way around, of course it makes no difference since it's squared in the end anyway). Am I missing something obvious or have I actually spotted a mistake? _________________
Quote:
This is sexier than what this forum was supposed to tolerate. - Banshee
Also Known As: banshee_revora (Steam) Joined: 15 Aug 2002 Location: Brazil
Posted: Fri Oct 19, 2007 1:26 am Post subject:
I wouldn't be surprised if you spotted this kind of mistake, since I love calculus so much... but I'm not really sure. Post here what did you find...
Edit: Actually.. I really messed up in an ugly way there when computing the derivative. The 3 should be removed, although it doesnt do much difference in the final result... I'll update the article as soon as I can. Last edited by Banshee on Fri Oct 19, 2007 9:16 am; edited 1 time in total QUICK_EDIT
Aha, awesome! Great work Banshee! Perhaps one of the only technical paper on something directly connected to such games as Tiberian Sun, although you had to use the mobile phone excuse to make it accesible. I like how you used C&C voxels, hah, although I haven't read much of the article. QUICK_EDIT
Also Known As: banshee_revora (Steam) Joined: 15 Aug 2002 Location: Brazil
Posted: Tue Jan 21, 2020 4:01 pm Post subject:
Here's a major, but an important bump for this topic. We had to change the file location of the article and the quick poster to get this section running correctly with our new friendly urls system. Sorry for any inconvenience. QUICK_EDIT
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum