## Where communities thrive

• Join over 1.5M+ people
• Join over 100K+ communities
• Free without limits
##### Activity
• 13:01
hernot commented #2063
• 09:50
kimkulling commented #3708
• 09:50

kimkulling on master

disable size check trim uvIndices to fix import of… Merge branch 'master' of https:… and 6 more (compare)

• 09:50
kimkulling closed #3708
• 07:44
RichardTea commented #3751
• 07:44
RichardTea commented #3751
• 07:35
kimkulling synchronize #3708
• Apr 11 19:31
krishty edited #3753
• Apr 11 19:24
krishty opened #3753
• Apr 11 19:07
krishty commented on d40a302
• Apr 11 18:37
kimkulling commented #3749
• Apr 11 18:37

kimkulling on master

Fix incorrect indices in the Mi… Merge branch 'master' into ms3d… Merge pull request #3749 from p… (compare)

• Apr 11 18:37
kimkulling closed #3749
• Apr 11 17:15
kimkulling closed #3751
• Apr 11 17:15
kimkulling commented #3751
• Apr 11 17:14
kimkulling labeled #3751
• Apr 11 17:12
kimkulling synchronize #3749
• Apr 11 11:14
bisevac-marko commented #3750
• Apr 11 11:14
bisevac-marko commented #3750
• Apr 11 11:11
bisevac-marko commented #3750
Kim Kulling
@kimkulling
there si a lib
ops is
Jerome St-Louis
@jerstlouis
@kimkulling the rapidjson is just a headers library though, right? I don't have any rapidjson .cpp files or external library in my project.
I think the issue might be with -ffast-math
Kim Kulling
@kimkulling
oh, correct
I thought it has some cpp files as well
Jerome St-Louis
@jerstlouis
Confirming that particular issue was caused by -ffast-math . I don't understand how that could mess up the JSON output but seems to be the case :S
Kim Kulling
@kimkulling
hm, which compiler?
Jerome St-Louis
@jerstlouis
g++ (GCC) 10.2.0
with that aside, I still get other errors like Value 0 is out of range. ( /bufferViews/0/byteLength ); Accessor element at index 243 is NaN. (accessors/1)
Kim Kulling
@kimkulling
ok ...
Jerome St-Louis
@jerstlouis
@kimkulling as Master Oogway would say ... one often meet his destiny on the the Road he takes to avoid it.
// Normalize all normals as the validator can emit a warning otherwise
aim->mNormals[ i ].Normalize(); -- This is causing isnan validation errors. Works fine without it.
ah... 0 length normals I guess is my problem :( My bad... sorry. It would be nice to add a 0 length check to avoid introducing NaNs though.
Jerome St-Louis
@jerstlouis
@kimkulling hey these a.FindUniqueID() on the asset... Are those are referencing GLOBAL things? Couldn't we just find those once and re-use? I think 99.9% is doing those finds on the global things taht are the same thing... Hmm maybe the meshName is different.
Andrew Valleteau
@avallete

Hi there, anyone has been able to use the assimp_cli inside an AWS lambda instance ?

I've built the assimp binary with -DBUILD_SHARED_LIBS=OFF, extracted the compilation result from the /bin/ created an AWS layer from it. My issue is that anytime I try to use the export command from the cli using NodeJS child_process.execI get a SIGKILL error without any more details from the command.

If anyone has already been able to do something similar, I could really use some help.

Jerome St-Louis
@jerstlouis
@kimkulling buffer->Grow(length + padding); -- did I mess that up or is that just wrong ? Shouldn't this be buffer->Grow(offset + length) ?
Jerome St-Louis
@jerstlouis
I was behind on 5.0.1... will try master instead.
Jerome St-Louis
@jerstlouis
Is ExportData() (glTF2Export) supposed to keep adding things to the same buffer? Because Grow() takes the total size yet only the length for the current buffer view is passed... and the offset for that buffer view is set to offset = buffer->byteLength which means it's pointing to the current end of the buffer... Am I missing something?
Jerome St-Louis
@jerstlouis
also isn't the std::max( need, cur_size+(cur_size>>1) ) logic wrong for those buffers that actually get written to the file? there's a separate capacity from byte_length my bad.
Jerome St-Louis
@jerstlouis
I found my problem... sorry for all the noise. It was a 0 tex->mWidth which was causing a buffer view with 0 length. Was looking at the wrong spots. I need to get used to those .inl extensions, need to fix ourIDE to recognize that as source files...
Jerome St-Louis
@jerstlouis
I am really struggling here trying to get the alpha channel of my texture to work... Any tip?
I tried the alpha channel of diffuse, setting an extra opacity map, setting aiTextureFlags_UseAlpha on $tex.flags ... Jerome St-Louis @jerstlouis AH I got it!$mat.gltf.alphaMode = "BLEND" has to be set...
turol
@turol
@kimkulling: yes, that would work
Jerome St-Louis
@jerstlouis
@kimkulling I have a proposed hackish fix for that slow glTF2 exporter performance I encountered:
assimp/assimp#3444
Jerome St-Louis
@jerstlouis
So the next big bottleneck is in MergeMesh(), where it tries to re-merge all meshes of a single node (even if they use different materials), which I had just separated because they use different materials, and assimp can only have a single material per mesh...
Kim Kulling
@kimkulling
thanks for you pull-reques. and yes the glTF stuff is hackish all over the place and needs a rework.
@turol I will start to provide the model data, I have still a lot of open issues from the fuzzer project on my list which are not entered unitl now.
dong
@dongfangliu
Hi, i have a question. Will the triangluate process also take the vertex skinning weight into account?
does anybody has some experience?
i mean, if my model is constructed with quads primitive and have skinning on that mesh, then i use assimp and triangulate it, will the codes also generate corresponding weights for those additional vertexs?
Kim Kulling
@kimkulling
good question, I think yes
Evilpudding
@EvilPudding
Hey, dunno if this is the right place to ask, but is there a way to prevent compiling and linking miniz without forking? I have a project that already uses miniz, and it has optional assimp integration, but when I try to statically link, I get lots of duplicated symbols. Is there some other way to encapsulate it either on my end or assimp's?
Kim Kulling
@kimkulling
hm
Evilpudding
@EvilPudding
It seems there was an old issue richgel999/miniz#18 on the miniz repo that would fix it, maybe I should bother them instead.
aaaand it seems it was already addressed, sorry for the spam :|
Kim Kulling
@kimkulling
@turol could you take a look onto google/oss-fuzz#4566 I do not get it. works in my Linux
turol
@turol
\$SRC is not set correctly for some reason
if you look at the command line, their -I is also wrong
-I/src/assimp/include
their build directory at least seems to be /home/runner/work/oss-fuzz/oss-fuzz/build/
Matthew Wallace

Hello all .... I have been exploring the idea of using assimp in an Oculus Quest application. To do this I would need to build from Unreal Engine to "basically Android" ... I have a working demo using windows and I'm able to load objects from an S3 bucket or the the file system just fine however, I'm not able to get this working on Android.

With in my Unreal Project all that it seems that I have to do is include the windows assimp dll in my binaries directory and I'm good to go.

All that being said is there somewhere that I can download the assimp binary that I would need in order to get this working or am I going to need to figure out how to build that myself for android?

José Ángel Martínez Torres
@joseangelmt

Hello to all,

I'm compiling the library to use it with Oculus Quest 2 headsets in a NativeActivity application.
My development machine is Windows and I'm using CMake UI to generate the build scripts.

I've to define ANDROID_ABI=arm64-v8a, change CMAKE_CXX_STANDARD_LIBRARIES to point to arm64-v8a versions of the libraries, and finally, uncheck ASSIMP_BUILD_TESTS.

Running ninja works fine with that configuration, but if I check ASSIMP_ANDROID_JNIIOSYSTEM, I get the next error:

C:\Users\josea\Desktop\assimp-master\build3>ninja
[3/4] Linking CXX shared library bin\libassimp.so
FAILED: bin/libassimp.so
cmd.exe /C "cd . && C:\Users\josea\AppData\Local\Android\Sdk\ndk\17.2.4988734\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android --gcc-toolchain=C:/Users/josea/AppData/Local/Android/Sdk/ndk/17.2.4988734/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64 --sysroot=C:/Users/josea/AppData/Local/Android/Sdk/ndk/17.2.4988734/sysroot -fPIC -fvisibility=hidden -fno-strict-aliasing -Wall -Wno-long-long -isystem C:/Users/josea/AppData/Local/Android/Sdk/ndk/17.2.4988734/sysroot/usr/include/aarch64-linux-android -D__ANDROID_API__=21 -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -Wa,--noexecstack -Wformat -Werror=format-security -std=c++11  -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -nostdlib++ --sysroot C:/Users/josea/AppData/Local/Android/Sdk/ndk/17.2.4988734/platforms/android-21/arch-arm64 -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -LC:/Users/josea/AppData/Local/Android/Sdk/ndk/17.2.4988734/sources/cxx-stl/llvm-libc++/libs/arm64-v8a -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libassimp.so -o bin\libassimp.so @CMakeFiles\assimp.rsp  && cd ."
port/AndroidJNI/libandroid_jniiosystem.a: error adding symbols: Archive has no index; run ranlib to add one
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

Am I doing something wrong to include JNI support?

Matthew Wallace