LightMesh Frage

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

TimBo

Betreff: LightMesh Frage

BeitragFr, Feb 11, 2011 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzBasic: [AUSKLAPPEN]
Graphics3D 640, 480, 0, 2
SetBuffer BackBuffer()
camera = CreateCamera()
light = CreateLight()
cube = CreateCube()
PositionEntity camera, 0, 0, 0
RotateEntity light, 90, 0, 0
PositionEntity cube, 0, 0, 10
EntityPickMode cube, 2
EntityFX cube, 2 + 4

While Not KeyDown(1)
LightMesh cube, 255, 0, 255
TurnEntity cube, 1, 1, 1
mx = MouseX()
my = MouseY()
entity = CameraPick(camera, mx, my)
If entity>0 Then
surface = PickedSurface()
triangle = PickedTriangle()
v0 = TriangleVertex(surface, triangle, 0)
v1 = TriangleVertex(surface, triangle, 1)
v2 = TriangleVertex(surface, triangle, 2)
VertexColor surface, v0, 255, 0, 0
VertexColor surface, v1, 255, 0, 0
VertexColor surface, v2, 255, 0, 0
EndIf
RenderWorld
Flip
Wend
End

-> Quelle aus der Hilfe.

Warum greift das LightMesh erst, nachdem 3 Vertices mit VertexColor verändert wurden? Ich möchte eigentlich eine Map aus verschiedenen Objekten haben und diese eigenständig ein und ausschalten können, OHNE erst alle Vertices mit VertexColor angesprochen zu haben.

Danke schonmal
TimBo
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

BIG BUG

BeitragSa, Feb 12, 2011 1:23
Antworten mit Zitat
Benutzer-Profile anzeigen
LightMesh ist additiv, d.h. die Farbe wird zu der bestehenden Farbe hinzugerechnet, was ja auch Sinn macht um mehrere Lichter auf ein Mesh einwirken lassen zu können.
Da der Default weiss ist, kannst Du das natürlich nicht noch mehr beleuchten.
Du kannst aber Lightmesh mesh, -255, -255, -255 benutzen um alle Lichter zu löschen (alle Vertices Farben auf 0,0,0 initialisieren) bevor Du Dein Licht setzt.
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final)

TimBo

BeitragSa, Feb 12, 2011 10:42
Antworten mit Zitat
Benutzer-Profile anzeigen
ahaaa , so habbe ich es zumindest beim Codebeispiel aus der Hilfe geschafft.
Ich habe aber ein Mesh, das ein Surface mit 2 Triangles besitzt. Das Mesh möchte sich einfach nicht bunt anleuchten lassen.
BlitzBasic: [AUSKLAPPEN]
		;Map erstellen
brush = CreateBrush(0, 255, 0)
Game\Map\Mesh=CreateMesh()
Game\Map\Surface=CreateSurface(Game\Map\Mesh);,brush)

Game\Map\Vertices[0]=AddVertex(Game\Map\Surface,-1,0, 1)
Game\Map\Vertices[1]=AddVertex(Game\Map\Surface, 1,0, 1)
Game\Map\Vertices[2]=AddVertex(Game\Map\Surface, 1,0,-1)
Game\Map\Vertices[3]=AddVertex(Game\Map\Surface,-1,0,-1)

AddTriangle(Game\Map\Surface,Game\Map\Vertices[0],Game\Map\Vertices[1],Game\Map\Vertices[2])
AddTriangle(Game\Map\Surface,Game\Map\Vertices[2],Game\Map\Vertices[3],Game\Map\Vertices[0])

LightMesh(Game\Map\Mesh,-255,-255,-255)
LightMesh(Game\Map\Mesh,255,0,255)
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.
 

BIG BUG

BeitragSa, Feb 12, 2011 13:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Prinzipiell geht das schon. Hast Du sichergestellt, dass in Deinem Entity auch EntityFX 2 gesetzt ist? Wenn Du Deinen Brush benutzen möchtest(auskommentiert) musst Du auch dort EntityFX 2 setzen.

Beachte: Ein Surface kann eine unterschiedliche Einstellung zum Entity haben, wenn mit PaintSurface/CreateBrush gearbeitet wurde.
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final)

TimBo

BeitragSa, Feb 12, 2011 17:22
Antworten mit Zitat
Benutzer-Profile anzeigen
danke BigBug, ich habe die Lösung:
BlitzBasic: [AUSKLAPPEN]
		EntityFX Game\Map\Mesh,1+2
LightMesh(Game\Map\Mesh,-255,-255,-255)
LightMesh(Game\Map\Mesh,255,0,255)


Der FX-Mode muss auf 1+2 gesetzt werden. Damit man die gewünschte Farbe bekommt.
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31
hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group