GithubHelp home page GithubHelp logo

Comments (6)

ddaeschler avatar ddaeschler commented on July 17, 2024

This was a major undertaking for multiple reasons last I investigated:

As already identified, the physx.net package had a bunch of issues that I had to fix where patches were not merged that I know of. Many of these issues were crashers, memory leaks, or O(n) / O(n^2) issues that had to be rectified before the package would perform at all well on long running and demanding simulation processes.

It was not possible to compile C++/CLI on linux. If this has changed that removes the biggest hurdle. Though it is possible to run pure C++ with only CLR calls on linux, this does not describe the bindings to physx.

I had started down an alternate path with swig wrappers to be bound to the current physic code for these reasons, but it was not completed work.

YMMV and things may have changed

from halcyon.

kf6kjg avatar kf6kjg commented on July 17, 2024

Thanks for the history David! BTW, any idea what revision of the upstream repo was forked off of? Since it went through SVN then uploaded back to GitHub from SVN, it's lost that info.

from halcyon.

kf6kjg avatar kf6kjg commented on July 17, 2024

Doing some research it turns out that C++/CLI is still a no-go on anything but Windows with notes that it's likely not going to happen. The entire library would have to be rewritten using P/Invoke which is basically a rewrite - not something a lib maintainer wants to do.

from halcyon.

mdickson avatar mdickson commented on July 17, 2024

David was the SWIG work every checked in anywhere? And yes C++/CLI isn't a viable option. You'd need P/Invoke wrappers as a replacement

from halcyon.

emperorstarfinder avatar emperorstarfinder commented on July 17, 2024

Hi there,

So I know that Halcyon uses the PhysX fork from StillDesigns so I am not sure if this will work or be of help but I figure at the very minimum it might at least provide some ideas going forward as you figure out the implementation of PhysX for Linux. If it does not help it is okay as I will have only wasted a couple of moments to provide the information. But even information passed on can be helpful even if in the end it does not work.

Before they officially switched over to Halcyon, the M-O-S-E-S project did, in fact, have a working PhysX wrapper for Linux in their fork of OpenSim. My team stumbled onto it as it was mentioned to us by one of our upstream providers. We found it on their projects page. However, since the time we found it they have added it to their GitHub organization as a repository. The link I am passing you is to their README.txt in that repository which contains instructions on how they built the wrapper, but if you click on the repository link you can also see their code. The link is: https://github.com/M-O-S-E-S/physx-wrapper/blob/master/README.txt

As I indicated I am not sure if they had this particular wrapper working on their Halcyon fork or not. At the very minimum, it was for an earlier version of OpenSim. So it might or might not work or even be viable here. I should also note that the versions of OpenSim that did have PhysX in the source code (i don't remember whether it was working, however, but I don't believe it was) likely was using the dlls direct from the Nvidia PhysX repositories which you can get access to but you have to register with Nvidia directly to get access to those repositories.

At any rate I hope this is of some help, even if at the very least it gives you some ideas to look at.

from halcyon.

kf6kjg avatar kf6kjg commented on July 17, 2024

This issue was moved to HalcyonGrid/halcyon#2

from halcyon.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.