Seite 1 von 1

Objekt trotz Lampen einfarbig?

Verfasst: Mittwoch 14. April 2010, 19:24
von krisi12345
Ich hab ein Ring in Blender gemacht, ihn mit einem selbst geschriebenen Script exportiert und dann in meinem Code wieder importtiert. Der Ring erscheint auch. Das Problem ist das er trotz den Lampen und Einstellungen nur einfarbig also ohne "smoothing"/reflektionen erscheint was diese Lampen genau verhindern sollen.
Bild: http://krisi12345.lima-city.de/Bildschi ... window.png

Code: Alles auswählen

import pygame

from OpenGL.GL import *
from OpenGL.GLU import *

from sys import exit

size = width, height = 800, 600

ob = open("/home/kristian/Desktop/ob.txt", "r").read().split(" ")

def get_event():
	for event in pygame.event.get():
		if event.type == pygame.QUIT:
			exit()

def obj(data):
	glBegin(GL_TRIANGLE_STRIP)
	glColor(150, 150, 150)
	for i in range(len(data)/3):
		a = i*3
		glVertex3f(float(data[a]), float(data[a+1]), float(data[a+2]))
	glEnd()

def draw():
	glDisable(GL_DEPTH_TEST)
	glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)
	glLoadIdentity()

	gluLookAt(0, -2, 5, 0, 0, 0, 0, 1, 0)	
 
	obj(data=ob)
	
	pygame.display.flip()

pygame.init()

screen = pygame.display.set_mode(size, pygame.OPENGL|pygame.DOUBLEBUF)

glMatrixMode(GL_PROJECTION)
gluPerspective(60, 1.0*width/height, 0.1, 1000.0)
glMatrixMode(GL_MODELVIEW) 

glDepthMask(1)
glShadeModel(GL_SMOOTH)

glClearColor(0.0, 0.0, 0.0, 0.5)

glLightfv(GL_LIGHT0, GL_POSITION, (5.0, 10.0, -10.0, 0.0))

glLightfv(GL_LIGHT0, GL_AMBIENT,  (.2, .2, .2, 0.0))

glLightfv(GL_LIGHT0, GL_DIFFUSE,  (1.0, 1.0, 1.0, 0.0))
glEnable(GL_LIGHT1)
glEnable(GL_LIGHTING)
glDepthMask(0)

while True:
	draw()
	get_event()
[/code]

Verfasst: Mittwoch 14. April 2010, 20:03
von EyDu
Ich tippe mal auf fehlende Normalen.