Tutorial für Orgre3d für PB?
Tutorial für Orgre3d für PB?
Die Hilfedatei ist ja leider völlig unbrauchbar. Ich hätte ja gerne Tutorials, die Quasi bei Null anfangen. Ich will keine Uncharted-Grafik hinzaubern, ich möchte eigentlich eher was Primitives wie eine Minecraft-Artige-Welt. Und ich würde gerne ohne spezielle Editoren auskommen, würde aber gerne Normal-Maps verwenden (und wie man sie am besten erstellt).
Leider hab ich festgestellt, das die Orge-Seite schon mal völlig nutzlos für mein Unterfangen ist, weil Orgre OOP ist und PB eben nicht. Damit sind leider viele Befehle aus den Beispielen so nicht verfügbar.
Wenn ich bspw. http://www.ogre3d.org/tikiwiki/tiki-ind ... =Tutorials anschaue, stolpere ich über den ersten Befehl:
mSceneMgr->setAmbientLight(Ogre::ColourValue(0.5, 0.5, 0.5));
Der PB-Befehl heitß wohl AmbientColor(RGB(255*0.5, 255*0.5,255*0.5)). Darauf muss man auch erstmal kommen....
Über den Sinn eine Grafik-Engine einzubauen und dann die Befehle umzubennen, damit man ja kein Tutorial ohne Probleme ausprobieren kann, stell ich jetzt mal nicht...
Lange Rede kurzer Sinn: Gibts für PB irgendwo Tutorials, oder ist die PB-Implantierung schlicht für den Popo, weil man keine Infos findet und man alles sehr mühsam selbst rausfinden muss.
Leider hab ich festgestellt, das die Orge-Seite schon mal völlig nutzlos für mein Unterfangen ist, weil Orgre OOP ist und PB eben nicht. Damit sind leider viele Befehle aus den Beispielen so nicht verfügbar.
Wenn ich bspw. http://www.ogre3d.org/tikiwiki/tiki-ind ... =Tutorials anschaue, stolpere ich über den ersten Befehl:
mSceneMgr->setAmbientLight(Ogre::ColourValue(0.5, 0.5, 0.5));
Der PB-Befehl heitß wohl AmbientColor(RGB(255*0.5, 255*0.5,255*0.5)). Darauf muss man auch erstmal kommen....
Über den Sinn eine Grafik-Engine einzubauen und dann die Befehle umzubennen, damit man ja kein Tutorial ohne Probleme ausprobieren kann, stell ich jetzt mal nicht...
Lange Rede kurzer Sinn: Gibts für PB irgendwo Tutorials, oder ist die PB-Implantierung schlicht für den Popo, weil man keine Infos findet und man alles sehr mühsam selbst rausfinden muss.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Re: Tutorial für Orgre3d für PB?
Ja, das ist in der Tat blöd. Man sollte mal eine Liste aller bereits in PB umgesetzten Funktionen auflisten mit den jeweiligen Ursprungsmethoden in Ogre, damit man diese besser finden kann.GPI hat geschrieben:mSceneMgr->setAmbientLight(Ogre::ColourValue(0.5, 0.5, 0.5));
Der PB-Befehl heitß wohl AmbientColor(RGB(255*0.5, 255*0.5,255*0.5)). Darauf muss man auch erstmal kommen....
Re: Tutorial für Orgre3d für PB?
Ogre ist sehr verwirrend in PB.
Die Engine mag gut sein aber eine umfangreiche Doku wäre da wenigstens schon mal hilfreich.
Die Engine mag gut sein aber eine umfangreiche Doku wäre da wenigstens schon mal hilfreich.
Re: Tutorial für Orgre3d für PB?
Es wäre auch hilfreich zu wissen, welche Version das jetzt ist - und eine Version ohne Windows-Scale-Faktor<>100% - Bug. Aktuell ist die Maus schlicht dann nicht nutzbar.Mijikai hat geschrieben:Ogre ist sehr verwirrend in PB.
Die Engine mag gut sein aber eine umfangreiche Doku wäre da wenigstens schon mal hilfreich.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Re: Tutorial für Orgre3d für PB?
Laut Changelog wurde zuletzt auf 1.8.2 aktualisiert.
- tft
- Beiträge: 605
- Registriert: 08.09.2004 20:18
- Computerausstattung: GTX Titan , i9 9900K , 32 GB Ram , 500 GB SSD , 3 ASUS FullHD Monitore and more
- Wohnort: Dachsen
- Kontaktdaten:
Re: Tutorial für Orgre3d für PB?
Hallo,
ich kann dein Leid nachfollziehen. Mir gets seid Jahren so. Das PB die beste Sprache der Welt einfach in sachen 3D ein totaler Krüppel ist.
Ogre verstehe ich bis heute nicht. Daher habe ich den Umweg über eine Veraltete Engine gemacht. Und damit get das meiste ja auch. Wenn
kein State of the art benötigt wird.
Gruss TFT
ich kann dein Leid nachfollziehen. Mir gets seid Jahren so. Das PB die beste Sprache der Welt einfach in sachen 3D ein totaler Krüppel ist.
Ogre verstehe ich bis heute nicht. Daher habe ich den Umweg über eine Veraltete Engine gemacht. Und damit get das meiste ja auch. Wenn
kein State of the art benötigt wird.
Gruss TFT
TFT seid 1989 , Turgut Frank Temucin , Dachsen/Berlin/Antalya
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak
- TroaX
- Beiträge: 661
- Registriert: 08.03.2013 14:27
- Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
- Wohnort: NRW
- Kontaktdaten:
Re: Tutorial für Orgre3d für PB?
Naja eigentlich sind ja alle Funktionen weitgehend dokumentiert und für den Einstieg sind auch ettliche Examples in Purebasic enthalten. Die Tatsache, das es keine guten und aktuellen Tutorials mehr gibt liegt daran, das die einfach keiner mehr schreibt. Ich hatte das schon einmal in einem anderen Thread erwähnt. Es gibt mittlerweile so viele verschiedene Engines, die einem die Entwicklung von Video-Spielen (auch 3D) so stark vereinfachen, das die manuelle Programmierung, wie sie in Purebasic angewandt wird, nur noch auf wenig Interesse stößt.
Unreal Engine, Unity, Leadwerks, CryEngine und Co. bieten sehr viele Authoring-Werkzeuge an, so das man man nur noch für etwas speziellere Funktionen etwas programmieren muss und dafür hat man meist eine für Einsteiger gut zugängliche API. Nicht zu vergessen, das es Purebasic noch an einer mächtigen Shader-Bibliothek mangelt (zumindest ist nichts in der Richtung dokumentiert).
Und ohne ernsthafte 3D-Entwickler gibt es eben auch keine guten Tutorials für die 3D-Entwicklung. Aber es steht jedem frei, welche zu schreiben und zu veröffentlichen. Vielleicht sollte hier die Community für die nötige Abhilfe sorgen. Github-Projekt anlegen, das Wiki für die Tutorials nutzen und in den Codes die Examples verwalten. Wenn ihr die Tutorials offline schreiben wollt, nutzt dazu einen guten Markdown-Editor wie Typora (<- Hammer Tool - Damit schreibe ich bis auf Dokumente alles - Tutorials, Dokumentationen usw.). Baut dort nach und nach eine Sammlung von Tutorials auf. Denn ich glaube kaum, das da in Zukunft von anderen noch etwas kommt. So blöd es ist. Denn ein Handbuch (Dokumentation) hat Purebasic. Beispiele/Examples hat es ebenfalls. Aber Tutorials müssen von der Community kommen.
Unreal Engine, Unity, Leadwerks, CryEngine und Co. bieten sehr viele Authoring-Werkzeuge an, so das man man nur noch für etwas speziellere Funktionen etwas programmieren muss und dafür hat man meist eine für Einsteiger gut zugängliche API. Nicht zu vergessen, das es Purebasic noch an einer mächtigen Shader-Bibliothek mangelt (zumindest ist nichts in der Richtung dokumentiert).
Und ohne ernsthafte 3D-Entwickler gibt es eben auch keine guten Tutorials für die 3D-Entwicklung. Aber es steht jedem frei, welche zu schreiben und zu veröffentlichen. Vielleicht sollte hier die Community für die nötige Abhilfe sorgen. Github-Projekt anlegen, das Wiki für die Tutorials nutzen und in den Codes die Examples verwalten. Wenn ihr die Tutorials offline schreiben wollt, nutzt dazu einen guten Markdown-Editor wie Typora (<- Hammer Tool - Damit schreibe ich bis auf Dokumente alles - Tutorials, Dokumentationen usw.). Baut dort nach und nach eine Sammlung von Tutorials auf. Denn ich glaube kaum, das da in Zukunft von anderen noch etwas kommt. So blöd es ist. Denn ein Handbuch (Dokumentation) hat Purebasic. Beispiele/Examples hat es ebenfalls. Aber Tutorials müssen von der Community kommen.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Re: Tutorial für Orgre3d für PB?
Da würde ich dir in einen Punkt stark wiedersprechen: Die Original-Ogre-Engine ist in OOP geschrieben und die PB nicht. Dadurch wird 99% der Dokumentation von Ogre (auf die auch in der Hilfe hingewiesen wird) hinfällig, weil sie nicht mehr passt. Man muss sich mit deutlich mehr rumärgern, als eigentlich nötig ist. Die Dokumentation ist eher mehr schlecht als recht, da helfen die Beispiele auch nur bedingt.TroaX hat geschrieben:Naja eigentlich sind ja alle Funktionen weitgehend dokumentiert und für den Einstieg sind auch ettliche Examples in Purebasic enthalten.
Imo war es ein Fehler die Ogre-Engine so zu implantieren und eine völlig neue API einzuführen. Zumal PB mit Interfaces ja eine 1:1 Umsetzung machen könnte.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Re: Tutorial für Orgre3d für PB?
Es kann aber auch setAmbientLightColour() sein, aber sicher bin ich mir nicht. Keine Ahnung, was der Unterschied ist.GPI hat geschrieben:mSceneMgr->setAmbientLight(Ogre::ColourValue(0.5, 0.5, 0.5));
Der PB-Befehl heitß wohl AmbientColor(RGB(255*0.5, 255*0.5,255*0.5)). Darauf muss man auch erstmal kommen....
- TroaX
- Beiträge: 661
- Registriert: 08.03.2013 14:27
- Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
- Wohnort: NRW
- Kontaktdaten:
Re: Tutorial für Orgre3d für PB?
Purebasic ist aber einfach keine OOP-Sprache. Es war und ist also zwingend erforderlich, die API zu OGRE zu abstrahieren. Und wenn die Entwickler von PB definitiv eine Umstellung auf Objektorientierung ausgeschlossen haben, dann wird es auch entsprechend abstrahiert bleiben. Es gibt ja kaum noch aktuelle prozedurale, funktionale oder imperative 3D Engines bzw. Renderer. Egal welchen sie also nutzen. Sie müssen es abstrahieren.
Mir kommt es da eher vor, das du versuchst, mit der OGRE-Dokumentation einen Bezug zur Purebasic 3D-API aufzubauen. Das dieses Unterfangen bei unterschiedlichen Paradigmen nahezu unmöglich ist, hast du ja jetzt selber festgestellt. Zum Beispiel die Klasse SceneManager wird in Purebasic im Hintergrund als alleinstehende Instanz für alle Proceduren, die sich auf die Szene beziehen, vorgehalten, während zum Beispiel Meshes wie in Purebaisc üblich mit einer ID refenziert werden. Die instanz selbst bekommt man aber nicht in die Finger. Wo wir wieder bei folgendem Umstand sind. Die 3D-Engine/-API nutzt OGRE und stellt auch einen entsprechenden Teil der Funktionalitäten der OGRE-Engine zur Verfügung. Aber die API in Purebasic ist nicht OGRE, sondern eben die Purebasic 3D-API. Wenn man also damit arbeiten will, nutzt man auch die Dokumentation der Purebasic 3D-API. Die Dokumentation ist wirklich bescheiden sortiert. Da besteht kein Zweifel. Aber du kommst mit der PB-Doku definitiv weiter als mit der OGRE-Doku. Denn die ist OOP und die Methoden-Bezeichnungen sind nicht kompatibel mit den Proceduren von PB. Wahrscheinlich nicht einmal immer die Parameter. Es ist abstrahiert.
Um die Dokumentation in den richtigen Kontext zu bringen, sind theoretisch Tutorials nötig. Diese gibt es aber kaum und wir sind wieder bei meinem letzten Beitrag. Ich glaube nicht, das Fred und Co. sich selbst hinsetzen und Tutorials schreiben die zeigen, was sie sich bei der Art der Abstraktion gedacht haben. Aber nachvollziehen kann ich die Abstraktion durchaus. Denn der objektbezogene Ansatz von Purebasic lässt sich auch auf die 3D-API anwenden, was zu einem einheitlichen Programmierkonzept innerhalb der Sprache führt. Dieses Konzept ist zwar mit den meisten anderen Konzepten anderer Sprachen nicht wirklich kompatibel. Aber wenigstens gibt es ein Konzept. Bei PHP gibt es das nicht wirklich und das Ding bekommt die Entwicklerszene auch nicht tot
Mir kommt es da eher vor, das du versuchst, mit der OGRE-Dokumentation einen Bezug zur Purebasic 3D-API aufzubauen. Das dieses Unterfangen bei unterschiedlichen Paradigmen nahezu unmöglich ist, hast du ja jetzt selber festgestellt. Zum Beispiel die Klasse SceneManager wird in Purebasic im Hintergrund als alleinstehende Instanz für alle Proceduren, die sich auf die Szene beziehen, vorgehalten, während zum Beispiel Meshes wie in Purebaisc üblich mit einer ID refenziert werden. Die instanz selbst bekommt man aber nicht in die Finger. Wo wir wieder bei folgendem Umstand sind. Die 3D-Engine/-API nutzt OGRE und stellt auch einen entsprechenden Teil der Funktionalitäten der OGRE-Engine zur Verfügung. Aber die API in Purebasic ist nicht OGRE, sondern eben die Purebasic 3D-API. Wenn man also damit arbeiten will, nutzt man auch die Dokumentation der Purebasic 3D-API. Die Dokumentation ist wirklich bescheiden sortiert. Da besteht kein Zweifel. Aber du kommst mit der PB-Doku definitiv weiter als mit der OGRE-Doku. Denn die ist OOP und die Methoden-Bezeichnungen sind nicht kompatibel mit den Proceduren von PB. Wahrscheinlich nicht einmal immer die Parameter. Es ist abstrahiert.
Um die Dokumentation in den richtigen Kontext zu bringen, sind theoretisch Tutorials nötig. Diese gibt es aber kaum und wir sind wieder bei meinem letzten Beitrag. Ich glaube nicht, das Fred und Co. sich selbst hinsetzen und Tutorials schreiben die zeigen, was sie sich bei der Art der Abstraktion gedacht haben. Aber nachvollziehen kann ich die Abstraktion durchaus. Denn der objektbezogene Ansatz von Purebasic lässt sich auch auf die 3D-API anwenden, was zu einem einheitlichen Programmierkonzept innerhalb der Sprache führt. Dieses Konzept ist zwar mit den meisten anderen Konzepten anderer Sprachen nicht wirklich kompatibel. Aber wenigstens gibt es ein Konzept. Bei PHP gibt es das nicht wirklich und das Ding bekommt die Entwicklerszene auch nicht tot
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript