Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Realease Bundles (for java integration) #103

Open
Eclesia opened this issue Mar 6, 2025 · 2 comments
Open

Realease Bundles (for java integration) #103

Eclesia opened this issue Mar 6, 2025 · 2 comments

Comments

@Eclesia
Copy link

Eclesia commented Mar 6, 2025

Hello, (and likely hello again jeffamstutz)

Opening an issue here too on the same line as :

Would it be possible to have the CI to make some basic static builds and have those artifacts as part of each release ?
To have the visrtx and visgl anari backends ready to be embedded in Java applications ?

Thanks,

Johann Sorel

@jeffamstutz
Copy link
Collaborator

This is something I've thought about for a bit, but I haven't moved on yet because OptiX headers are not easily available to fetch in CI. I suppose VisGL could still be done, which is a matter of enabling a build job with the right dependencies. I'm not sure how much work it will be to get it working on Windows, but I think Linux should be a matter of installing the right packages with apt.

Is the goal to statically link the devices? I'm not sure the ramifications of a statically linked ANARI front end library with a separately statically linked device library -- that may be a road block if you want to do everything static. If that does incur link issues, you may have to do the build/linking yourself...we shall see.

@Eclesia
Copy link
Author

Eclesia commented Mar 7, 2025

I understand it's not an easy task to make something more or less portable with C. It's one of the reasons java dev try to avoid native code as much as possible, it doesn't fit well. We have a CI to build a few C libs but it's a lot of work to keep up to date for just one build every one or two years.

It's going to change a lot in the coming years because of Panama which allows us to bind with native code without writing any native code and also share/manage the memory space. It makes everything better,simpler and without overheap.

I've try to build Visrtx and also Ospray but failed miserably, some libs too old or missing on my distro, no admin rights for some actions. It ends with a very long list of libs to build at the right version, then configure all the variables right .... it's really frustrating. :(
I really tried hard before asking....

C/C++ projects should adopt a friendly build tool like Rust with Cargo or Java with Maven or Gradle or Ivy.

To give a bit of context, I'm working off hours to see if ANARI and the current implementations could be a solution to render OGC 3D tiles. Something like this : https://www.geomatys.com/2018/07/18/3d-tiles-et-enc-en-action/

The goals are numerous, sometimes just a quick snapshot (helide would suffise) sometimes a more immersive navigation with high FPS (VisGL or O3DE would do i guess) and at some point high quality outputs will be required (VisRTX, Ospray). Anari is well designed and should be able to allow us to do all this without changing the code. The problem is setting up every engine, that's no easy task.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants