Orbiter-Forum  

Go Back   Orbiter-Forum > Orbiter Addons > Addon Development
Register Blogs Orbinauts List Social Groups FAQ Projects Mark Forums Read

Addon Development Developers post news, updates, & discussions here about your projects in development.

Reply
 
Thread Tools
Old 07-08-2018, 07:57 PM   #76
ADSWNJ
Scientist
 
ADSWNJ's Avatar
Default

Quick feature description of MMExt, so the folks on this thread can determine if it may be of use:
  • Any to any interconnection (vessel to MFD, MFD, to MFD, etc).
  • Pass by value for simple data types (e.g. int, double). One posts, the other optionally collects.
  • Pass by value for Orbiter standard things (e.g. VECTOR3, MATRIX3, etc)
  • Pass by value for OBJHANDLE, with additional checks to protect against object deletion.
  • Pass by reference for C++ structs derived from a well-known base class. Lots of protection around this (versioning, sige of struct), to protect against mismatched versions.
  • Wildcard search mode, for modules to discover new senders without needing hardcoding.

Examples: BaseSync, TransX, BurnTimeCalc, LagrangeMFD, LaunchMFD, Glideslope 2 ... all sharing variables to make the experience more intuitive.

I'd be happy to do some MMExt coding for this project if I can be of assistance.
ADSWNJ is offline   Reply With Quote
Old 07-09-2018, 05:49 AM   #77
Face
Beta Tester
 
Face's Avatar

Default

Quote:
Originally Posted by ADSWNJ View Post
 Quick feature description of MMExt, so the folks on this thread can determine if it may be of use:
Is there still the problem with missing runtimes, or is it fully late-binding now? I think the later would also be a "feature" to mention, given the middle-ware nature of WooMMU.
Face is offline   Reply With Quote
Old 07-09-2018, 07:21 AM   #78
Enjo
Mostly harmless
 
Enjo's Avatar


Default

Quote:
Originally Posted by Face View Post
 Is there still the problem with missing runtimes, or is it fully late-binding now? I think the later would also be a "feature" to mention, given the middle-ware nature of WooMMU.
Andrew sorted it out. It's fully late binding, with VC runtimes statically linked.
Enjo is offline   Reply With Quote
Thanked by:
Old 07-09-2018, 12:52 PM   #79
gattispilot
Addon Developer
 
gattispilot's Avatar
Default

I will be interested how you deal with touchdown points. I can change the y part so that the boot just touches the terrain. But then you move the guy in some parts and it covers most of him up?
gattispilot is offline   Reply With Quote
Old 07-09-2018, 05:50 PM   #80
Woo482
Moderator
 
Woo482's Avatar


Default

The best way I found to stop terrain eating the MMU was to set the touchdown points much larger than the physical footprint of the MMU, doing that avoided the terrain in most cases.

However my intention was / is to move away from touchdown points entirely, and update the vessel position directly through SetState - though that has enough problems on its own.
Woo482 is offline   Reply With Quote
Thanked by:
Old 07-09-2018, 05:55 PM   #81
gattispilot
Addon Developer
 
gattispilot's Avatar
Default

Quote:
Originally Posted by Woo482 View Post
 The best way I found to stop terrain eating the MMU was to set the touchdown points much larger than the physical footprint of the MMU, doing that avoided the terrain in most cases.

However my intention was / is to move away from touchdown points entirely, and update the vessel position directly through SetState - though that has enough problems on its own.
Oh. I can adjust the y axis so there is no space between the bottom and the top of the surface. I notice that some building at Brighton are actually above the surface also.
gattispilot is offline   Reply With Quote
Old 07-10-2018, 02:18 AM   #82
ADSWNJ
Scientist
 
ADSWNJ's Avatar
Default

Quote:
Originally Posted by Face View Post
 Is there still the problem with missing runtimes, or is it fully late-binding now? I think the later would also be a "feature" to mention, given the middle-ware nature of WooMMU.
Yup- as Enjo said, it's fully late bound now. You have a single include into a client, to put, get, find things from MMExt. If MMExt is not installed, you get an error status on the put, but nothing crashes (i.e. no Error 126). How is this done? Embedded into the header implementation is the helper code to do a LoadLibrary (to find and load the MMExt2.dll), and the the GetProcAddress calls (to find and load each internal function call). All data transfers across the dynamic call interfaces are multi-version code safe for C++. (How? Generally by serializing to C buffers, with a large-buffer mode to malloc and free if the string is >64 chars (unlikely), and then the header code converts back into a std::string in the context of the client's version of VC++. This was from bitter experience between Enjo and me passing from old versions of VC++ to newer ones, and finding that the binary compatibility is absolutely not to be trusted!).

Oh and static links for the VC runtimes, so no 126's there either. It's a clean piece of code and heavily battle-tested.
ADSWNJ is offline   Reply With Quote
Thanked by:
Old 07-10-2018, 12:08 PM   #83
gattispilot
Addon Developer
 
gattispilot's Avatar
Default

Quote:
Originally Posted by Woo482 View Post
 The best way I found to stop terrain eating the MMU was to set the touchdown points much larger than the physical footprint of the MMU, doing that avoided the terrain in most cases.

However my intention was / is to move away from touchdown points entirely, and update the vessel position directly through SetState - though that has enough problems on its own.



Not familiar with SetState. So a larger touchdown area? I would think a smaller so that it is more precise?


Playing around with a guy that moves
gattispilot is offline   Reply With Quote
Old 01-20-2019, 03:39 PM   #84
Urwumpe
Not funny anymore
 
Urwumpe's Avatar

Default

Hello, any news here?
Urwumpe is offline   Reply With Quote
Thanked by:
Old 02-03-2019, 04:09 PM   #85
Abloheet
Addon Developer
 
Abloheet's Avatar
Default

Would it be possible to release a beta version of this project for the community to test?
Abloheet is offline   Reply With Quote
Old 02-03-2019, 04:26 PM   #86
Woo482
Moderator
 
Woo482's Avatar


Default

Sorry, life got in the way - I'll see what condition things are in and see if I can get a release of some sort out.
Woo482 is offline   Reply With Quote
Old 02-03-2019, 05:18 PM   #87
Samuel Edwards
Decidedly Cyclical
 
Samuel Edwards's Avatar

Default

Quote:
Originally Posted by Woo482 View Post
 Sorry, life got in the way - I'll see what condition things are in and see if I can get a release of some sort out.
Life has a nasty habit of doing that. Thanks for all the work you have done so far and are doing to bring back such a critical part of the Orbiter experience.

Samuel Edwards is offline   Reply With Quote
Old 07-11-2019, 03:09 PM   #88
gattispilot
Addon Developer
 
gattispilot's Avatar
Default

Any news? I can help if needed.
gattispilot is offline   Reply With Quote
Old 07-21-2019, 01:44 PM   #89
Woo482
Moderator
 
Woo482's Avatar


Default

Sorry for the slow reply, there's two major blocking issues at the moment (I think, it's been a while since I worked on it properly ) that have stopped any real progress

Firstly is implementing the EVA ground movement, I have a basic implementation using AddForce to get them to slide around on the ground but that really doesn't hold up very well, especially with time acceleration - Ideally movement would be implemented by setting the vessel status and updating the position on the surface but the math involved there for the vessel orientation matrix is apparently way over my head and I've not managed to get it working smoothly

Secondly is having a set of crew models to ship with the add-on, 3D modelling isn't my forte (You've all seen my mars rover!) if anyone would like to contribute a set of meshes that'd be a big help.
Woo482 is offline   Reply With Quote
Old 07-21-2019, 03:25 PM   #90
Urwumpe
Not funny anymore
 
Urwumpe's Avatar

Default

Quote:
Originally Posted by Woo482 View Post
 Firstly is implementing the EVA ground movement, I have a basic implementation using AddForce to get them to slide around on the ground but that really doesn't hold up very well, especially with time acceleration - Ideally movement would be implemented by setting the vessel status and updating the position on the surface but the math involved there for the vessel orientation matrix is apparently way over my head and I've not managed to get it working smoothly
Well, I would say, you need a "middle-ware" library that does that kind of math for you, because I am VERY sure, you are not the only one who feels that way.

What about surface motion library?
Urwumpe is offline   Reply With Quote
Thanked by:
Reply

  Orbiter-Forum > Orbiter Addons > Addon Development

Tags
development, eva, mmu, ommu


Thread Tools

Posting Rules
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
Forum Jump


All times are GMT. The time now is 03:47 PM.

Quick Links Need Help?


About Us | Rules & Guidelines | TOS Policy | Privacy Policy

Orbiter-Forum is hosted at Orbithangar.com
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Copyright 2007 - 2017, Orbiter-Forum.com. All rights reserved.