Remix.run Logo
jandrese 7 hours ago

I was interested and wanted to see how much the animations burn CPU and whatnot, so I cloned the repo and went to try to build the demo but everything went to hell. The build environment is some .net thing written in C#. It comes with a "bootstrap.sh" file to get it going that immediately fails, even after installing the dotnet development environment. I fiddled around with it for some time before giving up because I was hitting an error about a Targeting Pack that was going to require me to hit a Microsoft website to fix.

But the README says the build process it just a couple of files so I figured I could just build it by hand. This involved downloading a couple more repos from the author's repo and setting up some symlinks, includes, and defines that I figured out through trial and error, but in the end I was not successful in getting the demo to build. I tried a combo of SDL2 and OpenGL3 but it bombed out with a C++ error about too many initalizers. The only good news is that I was able to cleanly build the demo_im_app code, but the main requires the ImPlatform which appears to be buggy.

Update: I figured out that you need to run a git submodule update command first. The shell script is supposed to tell you this but it is broken. This does a bunch of work but then dies because g++ doesn't stick the string ".exe" on the end of executibles. Also, the script looks in the wrong place for the output. A few text fixes in the bootstrap.sh and generate_projects.sh files and it gets to a point where the build is dying due to not having "main" or "sharpmake" objects in the current context, whatever that means. I don't know enough about C# to go further, especially for what was supposed to be a quickie 10 minute test. I'm hoping someone else figures this out and updates the repo.

SoufianeGfx 6 hours ago | parent | next [-]

You should be run bootstrap and generate_project script. For ImPlatform I didn't have setup to tests all permutations. For ImPlatform you should try glfw-opengl3 or Win32-dx11 for windows.

jandrese 5 hours ago | parent [-]

bootstrap.sh is buggy. The message about running the git submodule command is never shown because the directory already exists in the repo.

It also looks specifically for .exe files, when a linux compiler won't append that suffix.

It also looks in the x64 directory, which was not created when I ran it.

For some reason even though I have dotnet 8.x installed it compiled with dotnet 6.x and complained about 6.x being obsolete.

The generate_project script also looks for a .exe file, but even when stripped off the process fails with namespace errors for 'main' and 'sharpmake'. These errors occur in a temporary file unfortunately so they're hard to investigate.

SoufianeGfx 2 hours ago | parent [-]

Otherwise if you are already a Dear ImGui user: https://news.ycombinator.com/item?id=46111925 Just add 2 files im_anim.h/cpp in your project and you're done! And if you want the demo add demo_im_anim.cpp and call ImAnimDemoWindow(). Don't over complicate things.

SoufianeGfx 6 hours ago | parent | prev [-]

For perf usage the demo for 100+ of anims (clip, tween, stagger, ...) it cost between 2-5 ms depending on your computer (that's not mean a proper benchmarks).