Registriert: Di Nov 07, 2006 13:37 Beiträge: 83 Wohnort: Partenheim
Restless ist nun, nach langer Ankündigungsphase, endlich fertig.
Zur Erinnerung, Restless war das Projekt, das vor einem Jahr, kurz vor Weihnachten, unmittelbar vor der Veröffentlichung stand.
Zum Leistungsumfang könnt ihr euch die damalige News ansehen und auch die beiliegende Dokumentation.
Aber wer Fragen hat, natürlich gerne in einem entsprechenden Thread innerhalb von "Meinungen zu den Projekten" stellen.
Registriert: Mo Jan 31, 2005 11:02 Beiträge: 432 Wohnort: Rheinlandpfalz
Hallo,
wie in der News zu lesen ist, haben wir uns nun dazu entschlossen, den kompletten Quellcode freizugeben.
Dies hat unter anderem den Hintergrund, dass Linux Nutzer jetzt auch Restless benutzen können,
und, dass sich jeder näher mit den Implementations-Details beschäftigen kann, wenn er dies möchte.
Zum Anderen sind die Normalenberechnung und das File-Format als Dokumentation mit dabei.
Außerdem können so andere den Quellcode verändern, Funktionalitäten hinzufügen und Fehler verbessern.
Ein weiterer Unterschied besteht in der Lizenz (ist freizügiger geworden).
[Update der Projekt-Beschreibung: 05.01.08] Was ist Restless? Restless ist ein Loader für statische und dynamische Objekte für OpenGL Anwendungen. Die Objekte können mit Bone-basierten Animationen animiert werden. Da es kein FileFormat gab, das unseren Ansprüchen gerecht wurde, haben wir uns dazu entschieden ein eigenes Format, welches an das Wavefront Object Fromat angelehnt ist, zu entwickeln.
Was kann Restless? - Unterstützt beliebig viele Bone-Einflüsse pro Vertex
- Volle Kontrolle über die Bones (manuelles setzten der Matrizen/Quaternionen Lokal sowie Global)
- Lineare, Sinus oder komplett eigene Interpolation zwischen Animationen
- Mehrere Texturen pro uv-Layer (für Bumpmaps, Gloss-mapping etc.)
- Benutzt Callbacks für Texture-verwaltung (also nicht an einen Texture-Loader gebunden)
- Berechnet automatisch die Objekt-Normalen nach unterschiedlichen Methoden (Fast, Precise)
- Eigene Material-flags, entspricht in etwa User Data für Materialien (z.B. für Shader)
- Stellt zusätzlich einige Quaternionen, Matrix und Vektor Funktionen zur Verfügung
- Properties für Objekte (Bool, Int, Float, String) sind direkt in Blender festlegbar und können in der Anwendung verwendet werden
- Entities (Leere Objekte nur mit Matrix und Properties) können benutzt werden (z.B. für Particle Spawn Punkte etc)
Wer arbeitet an Restless? Die erste Version wurde von Conan und mir entwickelt. Darüber hinaus hat Lord Horazont viel Hilfe bei diversen Fragen geboten und auch in der Entwicklung der Properties und Entities in der neueren Version erheblich Beigetragen. Danke!
Ansonsten kann jeder bei der Entwicklung mitarbeiten, da der komplette Quellcode freigegeben ist, und so seine eigenen Erweiterungen einbauen, oder einfach aus Interesse in den Quellcode schauen.
Was kann ich damit machen? Hier einige Anwendungsbeispiele:
Was brauche ich um es verwenden zu können? Um es zu kompilieren und nutzen zu können, wird der Delphi OpenGL Header (dglOpenGL.pas) benötigt.
Zum einen eine VBO fähige Grafikkarte, da Vertex Buffer Objects intern für die Darstellung verwendet werden. Ansonsten müsste es mit FPC und Delphi kompilierbar sein, alternativ kann man auch die dll mit dem pascal header benutzen. Theoretisch sollte es auch möglich sein mit einem C++-Header die dll benutzen zu können, was aber nicht getestet wurde.
Nützlich ist auch das kostenlose 3D Programm Blender mit dem ihr dann eure Modelle erstellen könnt, da es momentan nur für dieses Programm einen Restless Exporter gibt.
Natürlich freuen wir uns, wie immer, auf Feedback!
Viel Spass damit.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Es gibt mal wieder ein Update von Restless. Ich habe hierbei ein paar Ideen und Vorschläge eingebracht und auch den Exporter für diese Zwecke erweitert.
Und zwar kann man nun die Properties, die man bei Blender in den Game Properties von Objekten eingeben kann, mit exportieren und in der Anwendung verwenden. Für diejenigen, die nicht wissen wovon ich rede: Man kann in Blender jedem Objekt beliebige Properties mit Namen, Typ (String, Float und Int) sowie natürlich einem Wert zuweisen. Diese Properties können jetzt mit dem Exporter exportiert und gespeichert und mit dem Loader dann im Programm verwendet werden.
Weiterhin können nun auch die Empty-Objekte (Entities) von Blender mitexportiert werden. Man könnte sie zum Beispiel als Definitionsobjekte für Partikelsysteme (dann auch in Kombination mit den Properties) oder einfach als Informationshalter verwenden. Da sie im Loader eine komplett separate Liste haben, ist es effektiver, ein Info-Objekt als Empty-Object als als Mesh zu haben.
Noch Fragen?
Feedback und ähnliches wie immer in den Meinungsthread
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.