Jump to content

oculus controller skined models


photo

Recommended Posts

Posted

Hello

How to change Oculus.controller.mesh to nice transparent hand as in oculus demos?

as I can see in Unigine, there are built in models of controller -

controller[0] = NodeReference::cast(Editor::get()->getNodeByName("oculus_touch_left_0"));

located at "data\samples\plugins\nodes\oculus_touch_left.node" and no hands model

how to implement skinned mesh models with some base poses for gestures instead of standard controller models? tutorials? implementation notes?

 

Posted

Hi Mikhail,

You need to download that hands model somewhere (maybe they are available in Avatar SDK) and import as SkinnedMesh into Editor. Tune material and write custom code that will play animations according to the controller buttons state.

We do not have any other models for Oculus Touch controllers inside SDK.

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Posted (edited)

got problem half way, could you help?

reflection.getFunctionName(I) drop error in code translated from c++ to c#

		IntPtr interpreter;
		Reflection reflection;

		public init() {
			api = API.None;
			Engine engine = Engine.get();
			if (engine.findPlugin("AppOculus") != -1) api = API.Oculus;// ok
			if (api == API.None) { Log.message("no OCULUS\n"); return; }
			Log.message("OCULUS are present\n"); // ok

			Log.message("init Reflections\n"); // ok

			//interpreter = (Interpreter*)Engine::get().getWorldInterpreter(); // c++
			interpreter = engine.getWorldInterpreter(); // c#?

			//reflection = std::make_shared<Reflection>(interpreter, Variable("engine.oculus")); // c++
			reflection = new Reflection(interpreter,new Variable("engine.oculus"));// c# ?

			Log.message("init Reflection getNumFunctions={0}\n", reflection.getNumFunctions()); // returned 56

			for (int i = 0; i < reflection.getNumFunctions(); i++) {
				Log.message("init Reflection {0}\n", i); // ok 
				Log.message("init Reflection {0}\n", reflection.getFunctionName(i)); // app crush!
				if (reflection.getFunctionName(i) == "getDevicePose")				getDevicePoseID = reflection.getFunctionID(i);
				if (reflection.getFunctionName(i) == "getDeviceVelocity")			getDeviceVelocityID = reflection.getFunctionID(i);

I think there may be something with replacing "std::make_shared<Reflection>(" with "new" in c# ?

 

 

Edited by lightmap
Posted

Hi Mikhail,

There is indeed crash in C# Reflection in 2.5 release. We already fixed this issue in our internal builds. Bug fix will be available in 2.6 SDK update.

Unfortunately, there is no workaround we can provide for this.

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Posted

Thanks for explaining,

waiting for download link to 2.6 SDK Preview,

do Unigine have page with roadmap (when to expect new versions) ?

×
×
  • Create New...