assimp WTF

category: code [glöplog]
yo, what an annoying piece of junk. wasted hours today getting something up and running:
- turns out the open3mod viewer is horribly outdated and writes broken .assbin files, but it's still recommended everywhere
- no current binaries are provided for the assimp library and/or the command line tool, so download huge pile of source just to build the exe
- build uses cmake. great need to download more shit.
- installed cmake, generated VS solution
- turns out VS Express 2010 doesn't seem to be supported as they are using new fancy C++ features. Ofcourse compiler requirements aren't documented anywhere it seems.
- fuck you
added on the 2019-06-05 15:01:27 by arm1n arm1n
So... it's almost as easy as modern web dev, then.
added on the 2019-06-05 15:13:22 by sol_hsa sol_hsa
no idea what open3mod is about! (i guess a modPlayer for PC. code your own one if you really need it! ;) It´s just about a hundred lines of code in 68k-code, so...! ;) While i think KB did a port once long ago!)

But lemme tell you that VS 2010 is a big pile of garbage! It´s the "MS Vista" of "MS VS" to me! I recently had to do some stuff in pure C....and this garbage only supports C89 as it seems...i was used to C99+, so i had the time of my life...not! ;) There´s a lot of stuff broken in VS2010...they never fixed it! Many Functions from the Standard-C-Lib are plain fucked up to begin with...you need to put some #DEFINEs to make them work at all, basically putting HACKs! :/ And if i remember correctly, this was the version when they changed the way you link stuff globally for all solutions aswell...this sucked hard, when i used it the first time almost a decade ago! Don´t let me get started on x64-fuckups...

TL,DR: Do NOT use VS2010 ;) Stay Sane!
isnt visual studio free these days? why dont you upgrade?
added on the 2019-06-05 15:18:01 by wysiwtf wysiwtf
I have VS 2017 Community installed as well. cmake already fails in the configure step as it can't detect the compiler it seems.
added on the 2019-06-05 15:25:11 by arm1n arm1n
VS 2010? Yeah, it probably doesn't compile on Watcom or Borland Turbo C either.

For me the biggest gripe is that it requires Boost, which is cancer and there were no sensible precompiled binaries available anywhere. I could never bother to set the whole thing up to compile.
added on the 2019-06-05 15:25:26 by Preacher Preacher
As said above, I also have VS 2017 installed, but it also doesn't work.
VS 2010 was a perfectly fine dev environment (C99 is not supported but this is not a major problem for me). I don't need the crap of the newer visual studios (integrated 3d model viewers, texture viewers, extended intellisense, whatnot).
added on the 2019-06-05 15:35:01 by arm1n arm1n
I wouldn't say C++11 being exactly new and fancy in the year 2019. Don't recall it using boost either but it has been a while since last time I glanced its sources.

I also wish it to have some sensible precompiled releases. I'd rather spend time coding effects than getting the thing compiling for MinGW. :-)
added on the 2019-06-05 15:39:50 by waffle waffle
can't you grab some compiled assimp.dll / .lib etc from other people's github? worked for me ~year ago cos i also didnt wanna install cmake and all that shit (premake ftw)
added on the 2019-06-05 15:41:02 by Maali Maali
maali: i need the assimp.exe as a standalone converter tool. I don't even care about the library, as I'm writing my own .assbin loader code (without the c++11 bullshit).
added on the 2019-06-05 15:43:10 by arm1n arm1n
For me the biggest gripe is that it requires Boost

added on the 2019-06-05 15:58:06 by Gargaj Gargaj
CMAKE may be a nifty tool to make projects cross-compilable between diff IDEs, but to me it´s just more time wasted on housekeeping those textfiles (especially when you need to look up each time, when you need to add sth, as not used to it). If I´d be in charge of a Projekt i´d imply everyone to use the same IDE and completely forget about CMAKE forever! ;)

Code: set(code ${codes}) list(REMOVE_ITEM code) cmake.exe
ok, it seems that for Release 4.1.0 there actually is also a windows installer available. Maybe it has the .exe prebuilt, I'll check. Release candidate 5.0.0 is definitely source only.
added on the 2019-06-05 17:56:07 by arm1n arm1n
https://github.com/assimp/assimp/blob/master/code/AssbinLoader.cpp#L70 :)

gargaj, yes I know you coded it :) that's the reason I'm actually hoping the whole pipeline will work in the end (your blog posts and occasional comments sound encouraging).
added on the 2019-06-05 19:23:59 by arm1n arm1n
ok confirmed: the 4.1.0 installer indeed includes a pre-built exe, good. Let's see where we can go from here..
added on the 2019-06-05 19:42:50 by arm1n arm1n
I just recently built assimp with Visual Studio 2019. Usual cmake(-gui) horrors, but it wasn't too hard to get it to work.

cmake Visual Studio projects are usually "throw away project files" - absolute paths etc... Not a fan.

I don't know exactly how assimp evolved, but some years ago I tried to use it for some computer graphics geometry stuff and I needed the imported models to be two-manifold and watertight. Assimp had the strong tendency to break the topology on import, creating totally unusable data.

It might be great for games and stuff that involves "getting the job done". But at least it was not perfect some time ago when it came to keeping the model data untouched.
added on the 2019-06-06 07:43:52 by las las
It was much easier with Quickbasic.
added on the 2019-06-06 08:17:57 by Optimus Optimus
I just pull assimp from NuGet. Problem solved.
added on the 2019-06-06 13:31:54 by kusma kusma
Oh, the joys of open source software.
You get what you pay for :P
added on the 2019-06-06 17:40:36 by BoyC BoyC
BoyC: You're saying that as if people don't pay for open source software. If that was true, I wouldn't have a job! ;)
added on the 2019-06-06 18:42:34 by kusma kusma
Seems the assbin exporter in 4.1.0 somehow is missing a commit Adding support for metadata in assbin format. Which is strange as the commit is dated Jul 11, 2017 and release 4.1.0 is dated Dec 11, 2017.

At least the assbin files it generates seem to miss the field that indicates the number of metadata properties.

added on the 2019-06-06 20:00:04 by arm1n arm1n
we wrote a custom exporter for c4d. full control, no bullshit, friendly framework, and we get exactly the data we want in the right format. proprietary 3d formats are total hell. i've never seen anything that works reliably. and, from reading this thread, I get the impression that "solutions" for this pest just don't work. in any case, I'd recommend writing custom stuff from scratch for the particular 3D suite you want to interface with, be it 3dsmax or cinema or whatever.
added on the 2019-06-06 20:19:42 by jco jco
jco: been there, done that. let me tell you that writing exporters for 3dsmax or maya is a major pain as well (coordinate system woes, recompiling your plugin for every major version change, yadayada)
added on the 2019-06-06 21:27:06 by arm1n arm1n
OpenCOLLADA + ASSIMP covers most of your needs.
added on the 2019-06-06 21:29:50 by Gargaj Gargaj