Advertisement

Blender: smoothing normals of the selection

Started by January 21, 2010 04:40 AM
7 comments, last by Ashaman73 15 years ago
Hey. this seems like it should be something simple but i cant figure out how to smooth out only the normals of the vertices that belong to the currently selected faces (with smooth out i mean recalculating the vertice normals based on the normals of the nearby faces). Thnx in Advance!
tab into edit mode.

Select whatever you want.

Hit [SMOOTH] in the edit buttons. Or hit W or CTRL-F to bring up a context menu, and select SHADE SMOOTH.
Advertisement
Thnx but my problem with this is that it makes no difference when i export models from blender whether i "Shade Smooth" or "Shade Flat". The normals i get in the exported models always stay flat.

Any other ideas?
what are you exporting the models as?

When I was exporting (.x) I noticed that everythtng was smoothed and I had to break up the bits I didn't want smooth. I can't remember what it was but in edit mode it was select a face/faces and split them from the faces I didn't want them smoothed wiht.

I think the problem will be entirly to do with the exporter, I wrote my own exporter to export to my own model file and did not have the same issue.

Interested in Fractals? Check out my App, Fractal Scout, free on the Google Play store.

Quote: Original post by EternityZA
Thnx but my problem with this is that it makes no difference when i export models from blender whether i "Shade Smooth" or "Shade Flat". The normals i get in the exported models always stay flat.

Any other ideas?
It's the exporter's code that is smoothing all your normals.

im also using my own exporter. although i only just started it so it still needs a long way to go. Anyway i write normals like this
  ....  sce = bpy.data.scenes.active  ob = sce.objects.active  mesh = ob.getData()  ....  i = 0  for vert in mesh.verts:    ....    out.write( 'n:%i,%f,%f,%f\n' % (i,vert.no.x, vert.no.y, vert.no.z) )    i = i + 1  ....


and that results in the normals always being flat.
Advertisement
Do you have flat shading toggled as a render state in your application?
Are you lighting your model?
Yes my game uses per pixel lighting. And just to be sure i did a simple test: I exported a plain 8 sided cylinder twice. Once with "Shade Smooth" and once with "Shade Flat" and i viewed the result in a text editor and theyre both exactly the same. here is what the exported model looks like. It only contains vertices, normals and faces.

v:0,0.707107,0.707107,-1.000000
v:1,1.000000,-0.000000,-1.000000
v:2,0.707107,-0.707107,-1.000000
v:3,-0.000000,-1.000000,-1.000000
v:4,-0.707107,-0.707107,-1.000000
v:5,-1.000000,0.000000,-1.000000
v:6,-0.707107,0.707107,-1.000000
v:7,-0.000000,1.000000,-1.000000
v:8,0.707106,0.707107,1.000000
v:9,1.000000,0.000001,1.000000
v:10,0.707107,-0.707107,1.000000
v:11,-0.000000,-1.000000,1.000000
v:12,-0.707107,-0.707107,1.000000
v:13,-1.000000,0.000001,1.000000
v:14,-0.707106,0.707107,1.000000
v:15,0.000001,1.000000,1.000000
v:16,0.000000,0.000000,-1.000000
v:17,0.000000,0.000000,1.000000
n:0,0.479812,0.479812,-0.734489
n:1,0.678579,0.000000,-0.734489
n:2,0.479812,-0.479812,-0.734489
n:3,0.000000,-0.678579,-0.734489
n:4,-0.479812,-0.479812,-0.734489
n:5,-0.678579,0.000000,-0.734489
n:6,-0.479812,0.479812,-0.734489
n:7,0.000000,0.678579,-0.734489
n:8,0.479812,0.479812,0.734489
n:9,0.678579,0.000000,0.734489
n:10,0.479812,-0.479812,0.734489
n:11,0.000000,-0.678579,0.734489
n:12,-0.479812,-0.479812,0.734489
n:13,-0.678579,0.000000,0.734489
n:14,-0.479812,0.479812,0.734489
n:15,0.000000,0.678579,0.734489
n:16,0.000000,0.000000,-1.000000
n:17,0.000000,0.000000,1.000000
:triangle:16,0,1
:triangle:17,9,8
:triangle:16,1,2
:triangle:17,10,9
:triangle:16,2,3
:triangle:17,11,10
:triangle:16,3,4
:triangle:17,12,11
:triangle:16,4,5
:triangle:17,13,12
:triangle:16,5,6
:triangle:17,14,13
:triangle:16,6,7
:triangle:17,15,14
:triangle:7,0,16
:triangle:17,8,15
:quad:0,8,9,1
:quad:1,9,10,2
:quad:2,10,11,3
:quad:3,11,12,4
:quad:4,12,13,5
:quad:5,13,14,6
:quad:6,14,15,7
:quad:8,0,7,15
&


hmm... i might just be missing something incredibly stupid somewhere.
Your export is similar to the OBJ format, what happens when you export your model as .obj ? Does it contains the same normals, or the smoothed normals ?
If it works with the .obj format, just take a look at the according export script.

This topic is closed to new replies.

Advertisement