Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

GrimmDominik

Frischling

  • »GrimmDominik« ist der Autor dieses Themas

Beiträge: 51

Wohnort: Plattling/Bayern

Beruf: Schüler

  • Private Nachricht senden

1

17.12.2003, 08:36

Objekt wird nicht beleuchtet!?

Hi Leute,

Habe jetzt einfach zu testzwecken eine Ebene aus zwei Dreiecken erzeugt.
Nun will ich mein Objekt per PointLight Beleuchten!
Mein Problem! Auf dem objekt kann ich keine Veränderung durch Licht erkennen!
Habe zuerst D3DLIGHT8 initialisiert, und dann das Licht per Renderstate aktiviert!
Was könnte daran Falsch sein?

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
D3DLIGHT8 Light
ZeroMemory(&Light, sizeof(D3DLIGHT8)); 
Light.Type = D3DLIGHT_POINT; 
Light.Diffuse.r = 1.0f; 
Light.Diffuse.g = 0.0f; 
Light.Diffuse.b = 0.0f; 
Light.Range = 100.0f; 
Light.Position  = D3DXVECTOR3(0.0f, 0.0f, 0.0f); 
Light.Attenuation0 = 0; 
Light.Attenuation1 = 1;
Light.Attenuation2= 0; 
lpD3DDevice->SetLight(0, &Light); 
lpD3DDevice->LightEnable(0, true); 
lpD3DDevice->SetRenderState(D3DRS_LIGHTING, true);


Danke schon im voraus!

DrthM2001

Alter Hase

Beiträge: 721

Wohnort: Karlsruhe

  • Private Nachricht senden

2

17.12.2003, 13:30

Fehlt das hier nicht?
(aus kapitel 9 geborgt)
g_pCityShadow->ComputeVolume(tbMatrixIdentity(), Light, 1000.0f, TRUE);
g_pCityShadow->RenderVolume(tbMatrixIdentity());
g_pCityShadow->RenderShadow(tbColor(0.0f, 0.0f, 0.0f, 0.5f));

Maxi

Treue Seele

Beiträge: 136

Wohnort: Müncheberg

Beruf: Ich muss noch in die Schule

  • Private Nachricht senden

3

17.12.2003, 15:26

das sidn doch die Funktionen für Schatten, will er doch gar nciht

HGaben deine Dreiecke normalen?
Gruß, Maxi

Hier, die Homepage von meiner Band:
www.maxis-house.de

Könnt euch unsere ersten Songs saugen...

GrimmDominik

Frischling

  • »GrimmDominik« ist der Autor dieses Themas

Beiträge: 51

Wohnort: Plattling/Bayern

Beruf: Schüler

  • Private Nachricht senden

4

17.12.2003, 18:13

Nein habe ich noch keine implementiert!!

5

18.12.2003, 08:51

ich glaub die brauchste aber, sonst kann der ja nix berechnen...

GrimmDominik

Frischling

  • »GrimmDominik« ist der Autor dieses Themas

Beiträge: 51

Wohnort: Plattling/Bayern

Beruf: Schüler

  • Private Nachricht senden

6

18.12.2003, 13:39

habs mitlerweile mal mit Normalen probiert, und nix wars! Das kann es doch nicht geben, oder?

GrimmDominik

Frischling

  • »GrimmDominik« ist der Autor dieses Themas

Beiträge: 51

Wohnort: Plattling/Bayern

Beruf: Schüler

  • Private Nachricht senden

7

18.12.2003, 17:28

Was könnte der Fehler sein! Mit den Normalen gehts auch nicht! ???
Um ein Objekt zu Beleuchten muss ich doch eigentlich nur das Licht beim Initialisieren der Szene erstellen, oder? und muss keine Vektoren angeben in welche das Licht strahlen soll. An was könnte es dann liegen, dass mein Objekt nicht beleuchtet wird! Habs auch schon mit nen Tetraeder versucht auch auf diesem war keine Beleuchtung zu merken!! ???

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

8

18.12.2003, 18:07

- Normalenvektoren checken (wie berechnest Du sie?)
- Materialfarben checken

GrimmDominik

Frischling

  • »GrimmDominik« ist der Autor dieses Themas

Beiträge: 51

Wohnort: Plattling/Bayern

Beruf: Schüler

  • Private Nachricht senden

9

20.12.2003, 13:22

Die Normalvektoren habe ich in meiner Vertexstruktur definiert!
Ich habe ihnen mal einfach drei Werte zugewiesen! (0.0f, 0.0f, -1.0f)
Die Materialfarben hab ich jetzt mal auf weiß gestellt und mein Licht auf Rot! Zu erkennen ist jedoch nichts!

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

10

20.12.2003, 14:43

Zitat von »"GrimmDominik"«

Die Normalvektoren habe ich in meiner Vertexstruktur definiert!
Ich habe ihnen mal einfach drei Werte zugewiesen! (0.0f, 0.0f, -1.0f)

Ist das Vorzeichen richtig?
Ist das Viereck vielleicht einfach nur sehr groß? Bedenke, dass die Beleuchtung auf Vertexbasis funktioniert. Kleine Veränderungen z.B. der Lichtposition haben also bei großen Objekten fast keine Wirkung.

Werbeanzeige