Jump to content


Photo

Connecting navmeshes


  • Please log in to reply
11 replies to this topic

#1 mcarman

mcarman

    Film Critic

  • Members
  • 16 posts
  • Gender:Male

Posted 20 June 2017 - 07:49 AM

Hi everyone, is it possible to have a character move from one navmesh to another without "teleporting" to the next one? Am I missing something?

 

Thanks

 

Edit: in hind sight I am guessing this is probably not that practical as you can just use creative cuts and camera moves to fake it from one navmesh to the next. But would still be good to know.



#2 jamoram62

jamoram62

    Master Director

  • Members
  • 817 posts
  • Gender:Male
  • Location:3724'21.05"N 00559'14.69"W

Posted 20 June 2017 - 08:12 AM

Apart from the obvious case (ie, a character displacing on the floor plane between two separate navmeshes), I guess the answer is not. To do so, they'd need to be touching one the other, and you may know by now Moviestorm doesn't like that arrangement (it uses to crash the program).

 

On the other hand, a prop may include different navmeshes connected among them and doing so is required for actually working, eg: for creating stairways (they include a series of navmeshes alternating in horizontal and vertical orientation):

 

Attached File  2017-06-20_100608.jpg   99.31KB   0 downloads

 

(stairs prop, part of the superb Castle Builder mod by Chris Ollie http://www.moddingst...1_Castle.shtml)

 

 


ars longa vita brevis - Hippocrates (attributed)
 
If you want to tell jokes then use Muvizu; if you want to make 'Movies', use iClone; but if you want to tell stories, use Moviestorm - PrimaveraNZ
 
Shared addons & stuff for Moviestorm: https://drive.google...aTNsSFBuN0sxZHM


#3 mcarman

mcarman

    Film Critic

  • Members
  • 16 posts
  • Gender:Male

Posted 20 June 2017 - 08:46 AM

Thanks for that information. So, im not a modeler by any means, so I have to ask how do you add navmeshes to a prop?

 

Does the alternating horizontal/vertical navmesh trick work with the built in moviestorm navemesh?

 

Thanks again.



#4 jamoram62

jamoram62

    Master Director

  • Members
  • 817 posts
  • Gender:Male
  • Location:3724'21.05"N 00559'14.69"W

Posted 20 June 2017 - 04:26 PM

Apart from the obvious case (ie, a character displacing on the floor plane between two separate navmeshes), I guess the answer is not. To do so, they'd need to be touching one the other, and you may know by now Moviestorm doesn't like that arrangement (it uses to crash the program).

 

In fact, I've managed to get this done:

https://drive.google...MnJyUG54YXNuWk0

 

This is the procedure I have used:

1) In the the Set Workshop view, place a navmesh just on the floor level.

2) Copy it and, by using the manipulator or gizmo, place the copy just touching the first navmesh.

3) Select one of the navmeshes and then, by maintaining pressed the Control key, select the another one.

4) Now, with the manipulator again, move both navmeshes together and place it when they're intended to be.


ars longa vita brevis - Hippocrates (attributed)
 
If you want to tell jokes then use Muvizu; if you want to make 'Movies', use iClone; but if you want to tell stories, use Moviestorm - PrimaveraNZ
 
Shared addons & stuff for Moviestorm: https://drive.google...aTNsSFBuN0sxZHM


#5 jamoram62

jamoram62

    Master Director

  • Members
  • 817 posts
  • Gender:Male
  • Location:3724'21.05"N 00559'14.69"W

Posted 20 June 2017 - 04:41 PM

Im not a modeler by any means, so I have to ask how do you add navmeshes to a prop?

 

I don't think of me as a modder, either :)

 

It's pretty straightforward, in fact. You need to create a prop with a composite template, ie, one including at least two parts, one of them the navmesh. 

 

For example, here you're the definition for one of the variants of my Security Door mod:

<mscope.things.factory.ModelTemplate model="SecurityDoor">
  <part slot="0" template="SG_NavMesh">
    <material id="0" name="SG_NavMesh [0]"/>
  </part>
  <part slot="1" template="SecurityDoor">
    <material id="0" name="SecurityDoor [0]"/>
    <material id="1" name="SecurityDoor [1]"/>
    <material id="2" name="SecurityDoor [2]"/>
    <material id="3" name="SecurityDoor [3]"/>
    <material id="4" name="SecurityDoor [4]"/>
  </part>
</mscope.things.factory.ModelTemplate>

You see: the first slot is the navmesh. The navmesh itself is just a simple mesh with one or more faces forming a surface. That's all.

 

Attached File  Navmesh.jpg   115.21KB   0 downloads

 

The only thing to take into account when defining the navmesh' material in Moviestorm is that it must be marked as a NAV_MESH (other flags use to apply, mostly for its appereance).

<mscope.things.factory.ModelPart>
  <name>SG_NavMesh</name>
  <description></description>
  <slot>0</slot>
  <tags/>
  <meshes>
    <string>SG_NavMesh</string>
  </meshes>
  <materials>
    <entry>
      <int>0</int>
      <list>
        <material>
          <name>SG_NavMesh [0]</name>
          <ambientColor>0.5859375 0.5859375 0.5859375 0.0</ambientColor>
          <diffuseColor>0.5859375 0.5859375 0.5859375 0.99609375</diffuseColor>
          <specularColor>0.0 0.0 0.0 1.0</specularColor>
          <shininess>0.0</shininess>
          <maps>
            <entry>
              <string>diffuseMap</string>
              <string>Data/Props/Set/SimpleNavMesh/Textures/NotAppear_Diff.dds</string>
            </entry>
          </maps>
          <flags>
            <string>CAMERA_INVISIBLE</string>
            <string>ALPHA_BLEND</string>
            <string>DOUBLE_SCISSOR</string>
            <string>TWO_SIDED</string>
            <string>NAV_MESH</string>
          </flags>
          <parameters>
            <entry>
              <string>zOffset</string>
              <float>-0.1</float>
            </entry>
          </parameters>
        </material>
      </list>
    </entry>
  </materials>
  <bindings>
    <boneBindings/>
  </bindings>
</mscope.things.factory.ModelPart>

FInally, the prop containing the navmesh must be marked Navigable. Again, the DESCRIPTOR file for the Security Door thing:

<ModelDescriptor>
  <name>Security Door</name>
  <model>SecurityDoor</model>
  <type>Prop</type>
  <tags>
    <string>Prop</string>
  </tags>
  <defaultVariant>SecurityDoor</defaultVariant>
  <attributes>
    <entry>
      <string>Deprecated</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>SCALABLE</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>AttachFloor</string>
      <boolean>true</boolean>
    </entry>
    <entry>
      <string>AttachCeiling</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>Holdable</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>Dont cast shadows</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>StackableOn</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>AttachWall</string>
      <boolean>false</boolean>
    </entry>
    <entry>
      <string>Navigable</string>
      <boolean>true</boolean>
    </entry>
    <entry>
      <string>Stackable</string>
      <boolean>false</boolean>
    </entry>
  </attributes>
  <sitBones/>
</ModelDescriptor>

It sounds worse than it's, promise.

 

 

 

 

Does the alternating horizontal/vertical navmesh trick work with the built in moviestorm navemesh?

 

Moviestorm won't allow you to rotate the navmesh around the required axis to get it vertical. So stock navmeshes are intended to be strictly horizontal.


ars longa vita brevis - Hippocrates (attributed)
 
If you want to tell jokes then use Muvizu; if you want to make 'Movies', use iClone; but if you want to tell stories, use Moviestorm - PrimaveraNZ
 
Shared addons & stuff for Moviestorm: https://drive.google...aTNsSFBuN0sxZHM


#6 mcarman

mcarman

    Film Critic

  • Members
  • 16 posts
  • Gender:Male

Posted 20 June 2017 - 11:02 PM

Thanks for all the good info. I see I have a lot to learn yet. I did try to put two navmeshes side by side  thinking it would work like that but it only gave me the option to teleport. I guess I did not have them perfectly aligned. I'll try again.

 

 



#7 primaveranz

primaveranz

    Master Director

  • Pioneers
  • 5262 posts
  • Gender:Male

Posted 21 June 2017 - 02:55 AM

Are the two meshes at different heights? Or are you just trying to expand the available area? Some of the navmeshes are re-sizeable so you don't need to join to another for that reason. Some are not however.


"If we only use 1/3 of our brain, what's the other 1/3 for?"


#8 mcarman

mcarman

    Film Critic

  • Members
  • 16 posts
  • Gender:Male

Posted 21 June 2017 - 04:30 AM

I scaled the basic navmesh up as much as it would go then cloned it and put them side by side. I was able to get them positioned correctly so that a character could walk across from one to the other, so most likely the first time I did it they were not lined up properly. Thanks.



#9 jamoram62

jamoram62

    Master Director

  • Members
  • 817 posts
  • Gender:Male
  • Location:3724'21.05"N 00559'14.69"W

Posted 23 June 2017 - 06:08 PM

A weird thought popped up to my mind, prompted by the subject of this thread: we've seen horizontal navmeshes and

navmeshes composed by vertical and horizontal sections, but what about a ramp navmesh? Would it be feasible a sloping navmesh?

 

So I've tried...

 

Attached File  TEST - NavMeshRamp.jpg   83.54KB   0 downloads

 

And this is the warping outcome: https://drive.google...d21rWkFaRTZKWTA

 

I'll let you answer the questions...


ars longa vita brevis - Hippocrates (attributed)
 
If you want to tell jokes then use Muvizu; if you want to make 'Movies', use iClone; but if you want to tell stories, use Moviestorm - PrimaveraNZ
 
Shared addons & stuff for Moviestorm: https://drive.google...aTNsSFBuN0sxZHM


#10 primaveranz

primaveranz

    Master Director

  • Pioneers
  • 5262 posts
  • Gender:Male

Posted 23 June 2017 - 08:41 PM

Years ago navmeshes were much more flexible, you could place a character on one, rescale the mesh and the actor rescaled too. All the animations still worked.

You could also animate tilting and rotating a mesh in at least 2 axis that's how I made this:- http://www.moviestor...w&vid_id=103689

 

Unfortunately code changes necessitated the removal of the functionality (which was rather flaky).


"If we only use 1/3 of our brain, what's the other 1/3 for?"


#11 jamoram62

jamoram62

    Master Director

  • Members
  • 817 posts
  • Gender:Male
  • Location:3724'21.05"N 00559'14.69"W

Posted 24 June 2017 - 12:37 PM

Years ago navmeshes were much more flexible, you could place a character on one, rescale the mesh and the actor rescaled too. All the animations still worked.

You could also animate tilting and rotating a mesh in at least 2 axis that's how I made this:- http://www.moviestor...w&vid_id=103689

 

Unfortunately code changes necessitated the removal of the functionality (which was rather flaky).

 

Really ingenious awesome trick :)  In these days of sorrow such a thing would require a posture animation, such as those by Chris Ollie.

 

 

 

 


ars longa vita brevis - Hippocrates (attributed)
 
If you want to tell jokes then use Muvizu; if you want to make 'Movies', use iClone; but if you want to tell stories, use Moviestorm - PrimaveraNZ
 
Shared addons & stuff for Moviestorm: https://drive.google...aTNsSFBuN0sxZHM


#12 mcarman

mcarman

    Film Critic

  • Members
  • 16 posts
  • Gender:Male

Posted 25 June 2017 - 06:03 AM

I was wondering the same thing about ramp style navmeshes. its a shame that the character gets skewed so badly because it almost looks like it could work.




  • Please log in to reply


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users