Assimp - Brainstorming zum Release
- Schrompf
- Moderator
- Beiträge: 5083
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Cool, das ist doch was wert!
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Schrompf
- Moderator
- Beiträge: 5083
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Leute! Bin ich inzwischen der Einzige, der überhaupt noch die Stellung im Sourceforge-Forum hält? Da ist z.B. grad ne Frage zum Java-Port, von der ich keine Ahnung habe. Zeigt euch dort doch mal wieder.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Jupp, ich werde wieder aktiver werden. Hauskauf hat viel Arbeit mit sich gebracht, kann ich als Entschuldigung vorbringen.
Gruß Kimmi
Gruß Kimmi
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Wer ist eigentlich der aktuelle Maintainer vom Java-Port? Weiß das hier jemand?
Gruß Kimmi
Gruß Kimmi
- Schrompf
- Moderator
- Beiträge: 5083
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Danke! Ich habe keine Übersicht, wie die Ports überhaupt funktionieren und wer da was getan hat... daher brauche ich da ja Hilfe.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
ich kann mich da mal reinlesen. Vielleicht spricht der Code ja für sich :).
Gruß Kimmi
Gruß Kimmi
Re: Assimp - Brainstorming zum Release
Aus der Assimp FAQ:
Sollte vielleicht mal geändert werden.Is ASSIMP able to export models?
No. ASSIMP is an import library. It is intended to import assets, which have been exported from programs like 3ds max, into game engines or other realtime visualization systems. Normally you won't need to export the assets again. If you really need this feature, your're free to open a branch and start coding.
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
https://jonathank.de/games/
- Aramis
- Moderator
- Beiträge: 1458
- Registriert: 25.02.2009, 19:50
- Echter Name: Alexander Gessler
- Wohnort: 2016
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Ich betreibe ja schon seit einiger Zeit einen Online-3D-Model-Konvertier-Service, der intern natuerlich Assimp verwendet.
Anbei sind aktuelle Statistiken bezueglich der Popularitaet einzelner Formate:
Most popular input formats (count)
3ds (28717)
obj (22460)
stl (15340)
dae (15147)
dxf (10424)
lwo (7618)
x (5864)
mdl (3405)
blend (3063)
ply (2345)
smd (1632)
b3d (971)
md3 (845)
xml (745)
lws (575)
ase (566)
md5mesh (550)
xgl (318)
off (295)
md2 (271)
Most popular output formats (count)
obj (53570)
stl (23308)
3ds (21501)
dae (17042)
x (4124)
ply (3165)
stlb (76)
Anbei sind aktuelle Statistiken bezueglich der Popularitaet einzelner Formate:
Most popular input formats (count)
3ds (28717)
obj (22460)
stl (15340)
dae (15147)
dxf (10424)
lwo (7618)
x (5864)
mdl (3405)
blend (3063)
ply (2345)
smd (1632)
b3d (971)
md3 (845)
xml (745)
lws (575)
ase (566)
md5mesh (550)
xgl (318)
off (295)
md2 (271)
Most popular output formats (count)
obj (53570)
stl (23308)
3ds (21501)
dae (17042)
x (4124)
ply (3165)
stlb (76)
- Schrompf
- Moderator
- Beiträge: 5083
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Interessant. obj ist wahrscheinlich deswegen so beliebt, weil jede Mini-Engine und jedes Tool noch einen Loader dafür rumfliegen hat.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Krishty
- Establishment
- Beiträge: 8317
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Ich komme bald an den Punkt, wo ich die Daten aus meinem Tool exportieren muss, so dass möglichst viele Engines sie verstehen. Da kommt mir so eine Statistik natürlich gelegen. Also OBJ ist de-facto-Standard, meint ihr?
- Schrompf
- Moderator
- Beiträge: 5083
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Für alles, was nur ne Triangle Soup will, ist OBJ der Standard. Sobald mehr als 64k Vertices rausfallen, stirbt OBJ. Sobald nennenswerte Hierarchien mit Transformationen abgebildet werden sollen, stirbt OBJ. Sobald irgendwas animiert werden soll, stirbt OBJ. Und zu guter Letzt: falls Du Lichtquellen, Kameras und dergleichen brauchst, ist OBJ aus dem Spiel.
[edit] Animationen, Kameras, Lichter... die anderen Formate können das theoretisch, aber die Exporter implementieren es trotzdem nicht, glaube ich.
[edit] Animationen, Kameras, Lichter... die anderen Formate können das theoretisch, aber die Exporter implementieren es trotzdem nicht, glaube ich.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Freut mich zu sehen, dass mein kleiner Loader sich so wacker hält. ich denke, einfache statische Meshes sind der Anfang einer jeder Engine und deswegen hält sich das Format. Außerdem ist es human-readable. Und exportiert man einfache Daten für FE-Netzte, reicht das auch. Mehr ist nicht drinnen.
Gruß Kimmi
Gruß Kimmi
Re: Assimp - Brainstorming zum Release
Wo wir hier schon einen inoffiziellen Assimp-Entwicklungsthread haben, poste ich gleich mal einen Bug.
Ich habe eine OBJ-Datei, von der ich glaube, dass sie früher einmal geladen wurde, jetzt streikt der Importer aber komplett. Weder mein Spiel noch Aramis Meshviewer kann das Modell laden.
Hier die Materialdatei:
Hier die Fehlermeldung:
Wie man sieht, steht nur 1 Wert drin, es werden drei erwartet und es kracht. Die Intuition wäre in diesem Fall natürlich, dass alle drei Werte 0 sind. Keine Ahnung, in wie weit das Standard ist, aber der Importer könnte ja auch einfach robust sein und Fehler tolerieren (ja, das ermutigt immer, unsaubere Dateien zu haben, aber trotzdem - man kann ja eine Warnung geben).
Ich bin in der Assimp-Entwicklung grad nicht so drin, sonst hätte ich vielleicht einen richtigen Patch eingereicht, aber mit dieser Beschreibung sollte es ja auch einfach zu fixen sein. Ich habe für mich fürs erste die Material-Datei gefixt, aber auf lange Sicht wäre ein gefixter Importer vermutlich schöner.
[edit]Ich habe das selbe Problem bei einem Haufen weiterer Dateien. Ich bin mir sicher, dass die früher einmal ohne Probleme geladen wurden.[/edit]
Ich habe eine OBJ-Datei, von der ich glaube, dass sie früher einmal geladen wurde, jetzt streikt der Importer aber komplett. Weder mein Spiel noch Aramis Meshviewer kann das Modell laden.
Hier die Materialdatei:
Code: Alles auswählen
# Blender3D MTL File: BG_Sphere1.blend
# Material Count: 1
newmtl BG_Sphere_BG_Sphere2.jpg
Ns 96.078431
Ka 0.000000 0.000000 0.000000
Kd 0.640000 0.640000 0.640000
Ks 0
Ni 1.000000
d 1.000000
illum 2
map_Kd BG_Sphere2.jpg
Hier der Code:The string "" cannot be converted into a value.
Code: Alles auswählen
// Assimp::ObjFileMtlImporter::load() Line 148
while ( m_DataIt != m_DataItEnd )
{
switch (*m_DataIt)
{
case 'K':
{
++m_DataIt;
.....
else if (*m_DataIt == 's')
{
++m_DataIt;
getColorRGBA( &m_pModel->m_pCurrentMaterial->specular ); <<---- hier
}
// ObjFileMtlImporter::getColorRGBA(aiColor3D * pColor) Line 229
void ObjFileMtlImporter::getColorRGBA( aiColor3D *pColor )
{
ai_assert( NULL != pColor );
float r, g, b;
m_DataIt = getFloat<DataArrayIt>( m_DataIt, m_DataItEnd, r );
pColor->r = r;
m_DataIt = getFloat<DataArrayIt>( m_DataIt, m_DataItEnd, g ); <<---- hier
pColor->g = g;
Ich bin in der Assimp-Entwicklung grad nicht so drin, sonst hätte ich vielleicht einen richtigen Patch eingereicht, aber mit dieser Beschreibung sollte es ja auch einfach zu fixen sein. Ich habe für mich fürs erste die Material-Datei gefixt, aber auf lange Sicht wäre ein gefixter Importer vermutlich schöner.
[edit]Ich habe das selbe Problem bei einem Haufen weiterer Dateien. Ich bin mir sicher, dass die früher einmal ohne Probleme geladen wurden.[/edit]
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
https://jonathank.de/games/
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Danke für den Bugreport, wir kümmern uns drumm :).
Gruß Kimmi
Gruß Kimmi
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: Assimp - Brainstorming zum Release
Sollte erledigt sein.
Kimmi
Kimmi