I have a 3rd party library that is compiled in 32-bit (which internally references 32-bit only libraries that don’t support 64-bit), but which I need to talk to as a 3rd party library from my UE4 project (x64 build as the editor won’t work targeting x86 I believe). I know I cannot talk to the x86 lib directly and will probably need some kind of inter process communication. What I am trying to do is send raw mesh data from the x86 library to my UE4 x64 project.
The data is basic e.g.
int vertexCount,
float** vertices,
int indexCount,
unsigned short indices,
int texSize,
float* tex
etc.
I was thinking of turning the 3rd party library into a running process and using shared memory to transfer data two-way between the processes so I can eliminate any function calls and also won’t have to reference the 3rd party lib from my UE4 project. Before I start down that path I was just wondering if its going to be achievable or if there is a better way to approach this.
Some of the libraries used in my 3rd party library are legacy and I can’t rebuild the source.
I have been trying to implement a named pipe solution to this.
This leads me to another question though. Is there a tutorial on creating a mesh in UE4 using the kind of raw data I specified above? In the ‘GenerateProceduralMesh’ tutorial they use ‘SetGeneratedMeshTriangles’ to set the vertices of the mesh, but I bring through indices as well, because the original system I was using to render the meshes used opengl triangle strips. I will also need to create a texture from tex coords and DXT1 compressed data.
Any tutorials or relevant documentation along these lines would help, thanks.