OGRE - warum funktioniert das nicht?

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

OGRE - warum funktioniert das nicht?

Beitrag von dllfreak2001 »

Mal nen komischer Fehler, das will bei mir nicht funktionieren....

Wisst ihr was ich falsch gemacht habe?

Code: Alles auswählen

InitEngine3D()



InitSprite()
InitKeyboard()
InitMouse()

#screenh = 800
#screenw = 600

OpenScreen(#screenw, #screenh,32,"IN3D")

     CreateCamera(0, 0, 0, 100, 100)
     CameraLocate(0, 0, 0, 1000)
     
Repeat
  ExamineKeyboard()
  ExamineMouse()
  
  ClearScreen(RGB(0, 0, 0))

  RenderWorld()
  FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
CloseScreen()
I´a dllfreak2001
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

600x800 geht ned:

Code: Alles auswählen

#screenh = 800
#screenw = 600 
Muss lauten

Code: Alles auswählen

#screenh = 600
#screenw = 800 
:wink: Hab mich auch zuerst gewundert, warum kein Screen aufploppt bei meinem lahmen Laptop. Sonst sieht man ja zuerstmal ne Auflösungsveränderung und nen schwarzen Bildschirm.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

:allright: Danke! Manchmal bin ich auch blind.
I´a dllfreak2001
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Das kommt davon, wenn man ein mal die Höhe und Breite vertauscht :lol:


... ich glaub ich hät den Schnipsel erst komplet neu schreiben müssen ...
und mich dann gewundert, warum meins klappt und deins nicht. :wink:
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Genau! Immer wieder diese Fehler... :lol:

Ich werde bei Problemen und fragen zu Ogre diesen Thread immer mal wieder aufgreifen und eine ordentliche Dokumentation zu den Ogrefunktionen zusammenfassen, wenn ich Zeit habe.

Ich finde es Schade, das die "light-atenuation" und der "light-radius" nicht verstellbar sind in der PB-Ogre-Ausgabe.

Außerdem gibt es in DX9 (ich nehme mal stark an das gibbet auch in OGL und ältern DX-Versionen) einen Befehl der die Normalen der Meshes bei Skalierung so anpasst, dass sie immer korrekt ausgeleuchtet werden.
Ich werde dann mit bißchen Bastelei prüfen ob der an ist.
I´a dllfreak2001
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

dllfreak2001 hat geschrieben:Ich finde es Schade, das die "light-atenuation" und der "light-radius" nicht verstellbar sind in der PB-Ogre-Ausgabe.
:wink: Als Workaround kannst du ja Shader/Programs nehmen.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Geht sowas überhaupt mit dem PB-Ogre?

Schade drum im "normalen" C++-Ogre sind die Befehle vollständig da und würden sicher einiges mehr an Spielraum erlauben.

Bumpmapping wäre auch nicht schlecht und vielleicht auch Decals.
I´a dllfreak2001
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Würdest ordentlich programmieren, wäre der Fehler nicht aufgetaucht.

Wieso macht man denn die Bildschirmauflösung als Konstanten?

Hatten wir nicht erst neulich das Thema: Seitenverhältnisse und Auflösungen?


Desktop-Abfragen oder halt diese Beispiele nutzen, wo am Anfang
ein Auflösungs-Requester kommt.

Na ja. Weißt ja nun, wo der Fehler lag. :roll:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Das ist nur ein Bastelprogramm zum lernen und keines was ich verkaufen oder als solches veröffentlichen will.
Konstanten fallen wegen der Einfärbung besser ins Auge und falls ich dann die Auflösung doch mal von Außen veränderbar gestalten will greife
ich auf die Suchen&Ersetzen-Funktion der PB-IDE zurück.

Die Beispiele sind gerade wegen der Requester etwas unübersichtlich
und ich möchte das extra zusammenprogrammieren um die Eigenheiten
von PB-Ogre kennen zu lernen. Bei früheren Experimenten mit Ogre sind mir schon einige Inkonsistenzen im Vergleich zum restlichen PB´schen Befehlssatz aufgefallen. So spielt bei einigen Eingaben durchaus die Reihenfolge eine Rolle, wo diese laut offizieler Dokumentation egal sein sollte.
Auch bin ich noch am Rätseln wozu man bei der aktuellen Version bei den Examples den Befehl ClearScreen() benutzt.
Zumal das Zeichnen direkt auf den Screen nicht mehr möglich ist.

-Der Fehler mit dem Skalierbaren Terrain ist ja auch noch drin
-Das Skalieren von Meshes passt nicht die Ausleuchtung an
-Lichter sind nicht anpassbar

Hier wird erklärt was man bei C++ macht um dem entgegnzuwirken
http://www.directxtutorial.com/Tutorial ... x9B10.aspx
I´a dllfreak2001
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Interessante Seite.

Na ja, ich hatte deshalb lieber gleich meine eigene "Engine"
gebastelt. Da weiß ich wenigstens, was sie macht und wieso :D

Finde auch doof, dass man Sprites() initialisieren muss,
diese aber wohl nicht richtig verwenden kann.

Zu mindest hatte ich manmal den Eindruck, dass da Dinge
nicht angezeigt werden oder es unerklärliche Fehler gab.

:roll:
Kinder an die Macht http://scratch.mit.edu/
Antworten