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

1

25.10.2003, 14:05

*heul* Lichter funktionieren nich!!!!!

:crying: :crying: :crying:

ahhhhhh

ich hab mir 2 Dreiecke mit texturen gemacht die sich drehen!!!!!

aber wenn ich ich per renderstate lighting auf true setze sind die dinger schwarz, obwohl ich eine lichtquelle gesetzt habe!!!!!!!

ich hab das ohne materials gemacht!!!!

wenn ich es mit materials mache sieht man die Dreiecke auch wenn ich das licht ausmache........
wenn ich es anmache ist eine seite(da wo ich die normalen hingesetzt hab rot!!!!!

:crying: :crying: :crying:


HIIIIIIIIIIIIIIILLLLLLLFFFFFFFFFFFFFFÄÄÄÄÄÄÄÄÄÄÄÄÄ!!!!

Bobba

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

25.10.2003, 14:20

Jetzt nochmal langsam.
Einmal schreibst Du, dass es schwarz bleibt, wenn Du die Beleuchtung einschaltest. Danach schreibst Du, dass es rot wird. Was denn nun? Am besten postest Du auch mal ein bisschen Code: wo Du das Dreieck initialisierst (die Vertexdaten ausfüllst), wo Du die Render-States setzt und wo Du das Licht initialisierst.

3

25.10.2003, 15:25

hast du vielleciht vergessen deinen vertices einen diffuse-wert zu
gönnen.? daran wäre ich fast mal verzweifelt.

Quellcode

1
2
3
4
5
6
7
8
struct vertex
{
     vector    pos;
     vector    normal;
     DWORD diffuse_color;  
     float u,v;
     .....
};

4

25.10.2003, 18:47

Ich schätze eher das die Lichtquelle nicht richtig Initialisiert wurde. An den Vertexfarben liegt es nicht.

Zitat

ich hab das ohne materials gemacht!!!!
Also ich schätze es liegt genau daran. Wenn man D3DRS_LIGHTING auf TRUE setzt erwartet D3D auch ein Material. Das Material beschreibt nun einmal wie das Licht von dem Objekt Reflektiert werden soll.

Mach mal eine Weise Lichtquelle und setz ein Material das alle Farben Reflektiert und versuch es noch einmal.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

5

25.10.2003, 19:15

Zitat


wenn ich es mit materials mache sieht man die Dreiecke auch wenn ich das licht ausmache........
wenn ich es anmache ist eine seite(da wo ich die normalen hingesetzt hab rot!!!!!


das schien ja irgendwie auch nicht so recht zu funktionieren.
er sollte wohl mal etwas code posten

6

25.10.2003, 23:11

ok... ich hab den code jetzt grad nich zur hand...
ich versuchs nochmal zu erklären:

ich hab das zwei mal gemacht:

1.
ein Polygon(Triangle) mit textur und eine lichtquelle(normalen sind korrekt gesetzt). ich hab keine materialien gesetzt!!!! Wenn ich lighting auf TRUE (Renderstates) setze, sind die dreiecke schwarz.auch das ambientlicht funktioniert nicht!!!

2.
wieder das Dreieck, aber jetzt mit materialien(es soll rot glühen). wenn ich wieder lighting auf True setzte aber die lichtquelle nicht anschalte, ist das dreieck komplett beleuchtet. es glüht zwar nicht rot, aber man sieht die textur.
wenn ich jetzt das licht anschalte, ist die seite, die ich mit den normalen markiert habe rot(mit Textur) die andere Weiß(mit textur);


warum????

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

8

26.10.2003, 15:27

oh...

jetzt hat es sich erledigt!!!!

ich brauchte ja ein material, weil mein vertexformat nur XYZ|normal|tex1
war, habe aber nicht zeromemory benutzt und die emmissivecolor net angegeben(also dass die null is, was man ja nicht machen bräuchte, wenn man zeromemory benutzen würde)!!!

so... jetzt funktionierts aba!!!!

mfg
Bobba

Werbeanzeige