VR_Dev

Members
  • Content count

    1029
  • Joined

  • Last visited

Community Reputation

840 Excellent

About VR_Dev

  • Rank
    Unity Developer

Contact Methods

  • Website URL https://www.youtube.com/channel/UCx4Fn6LeGOW4cKUZ2iU79-g

Recent Profile Visitors

2104 profile views
  1. [WIP] Infernal Robotics - Next

    So I can rig blender models, then deform them via script in Unity. But the spring would be quite a difficult challenge I think to compress it without altering the diameter of the spring. Something like this could be the solution. Also I don't need IR to control any animations, just the bone transforms themselves. Edit : Found a tutorial for spring rigging, if we wanna go that way.
  2. [WIP] Infernal Robotics - Next

    My vote is new models. Like you said it will be a much better visual representation of what the parts do. And with big spring shocks we could start making some mad max stuff up in here.
  3. [WIP] Infernal Robotics - Next

    Did some simple tests with ModuleWheelSuspension. Duplicated a wheel and took out everything but that module. Also gave it two attachment nodes. Hard to tell if it's working though. Maybe it isn't designed to use with nodes, or I don't fully understand the module settings. Seems like the model just needs a suspensionTransformName in the mesh. This is the documentation. Seems like they already have the re-load situation figured out. https://kerbalspaceprogram.com/api/class_module_wheels_1_1_module_wheel_suspension.html#ac0274b5c097adaa599a366a0240fb8e8
  4. [WIP] Unity Controlled Robotic Plugins

    Thanks man. Nothing is tuned right now, so I'm sure with a little love it will be much better. I was gonna send the project out to you and ZodiusInfuser this morning but I remembered I have some file Paths hard coded I'm gonna need you guys to change. So I want that to be as easy as possible. I dont think its a lack of friction between the foot and the ground, as much as the foot bouncing off the ground. Like I explained in the IR next thread, the Servo Speed PID is responsible for slowing the foot down as it gets too the ground. If it hits the ground too hard it explodes, slightly to hard and it bounces back into the air, and if I turn the speed way down, the whole performance suffers. This is why I'm looking forward to trying to build suspension parts. So that the mech leg can hit the ground with some force, and not explode. This would also help increase ground contact. I'm going to draw the ground triangle a different color when all three legs have contact as opposed to just two. This should help debug maintaining ground contact throughout the translation forward. Thanks! I'm really happy with it. I do measure the ground every frame, but it could be done just on contact if need be without much change in performance. If it had to be on contact, I would just set the active balance target once contact was made, instead of throughout the whole stride. I have high hopes for turning. My initial thought is i will rotate a transform in unity that will be the desired vector. Then, if the difference in vectors is less then say 15 degrees, the bot turns the way I have now. Anything higher than that the bot will stop, rotate, then begin walking. Still long way to go on that and I'm out of town all weekend so prob no progress anytime soon. I've also thought about how easy it would be to make a few changes, and make this run stand alone in ksp. My method could be used for development of projects, then when they are done just a few changes will allow them to be run stand alone in ksp. I always thought one of these could get rigged onto an IRL foot.
  5. [WIP] Infernal Robotics - Next

    Yeah that's definitely how it should be done. Didn't mean to start a whole suspension discussion. I assumed they fell under the Unity Joint umbrella and would be pretty straightforward to implement in this project. You stick with IR and I can look into suspension.
  6. [WIP] Infernal Robotics - Next

    Why not just destroy the part when an outside force pushes it past its limit? That's what would happen in real life anyway. It would just mean you have one more realistic thing to consider when engineering robotic structures. Edit: Right after i posted this I realized if the limit where 60 and the servo were at 60, any tiny force would break it, which isn't what we want. I was only considering if the servo were at 30, and something forced it 30 degrees past its limit. The more I learn about the springy joints the more I understand why they don't exist yet. I'm committed to trying to figure it out though. Unfortunately I think the only option is to mess with the loading sequence however. Maybe the moduleLandingGear is the key. Having trouble finding documentation though. Also I'm curious as to their loading behavior. I'll take a look tonight how landing gear/wheels react on a flight state reload.
  7. [WIP] Infernal Robotics - Next

    yeah ok I got it now I think. So at first launch it compresses itself to the correct position, but if you go to the space center and back to the vessel the compressed state becomes the new default. Do you know if it is specifically built in Unity or custom Ksp that controls this behavior? I'm pretty excited for this idea now. It would be amazing to have some damping when placing a mech foot on the ground. Right now the servo speed PID is the only thing that slows the foot down as it gets close to the surface. Too fast and the foot part just explodes on contact. But a suspension part between the knee and the foot to dampen the impact. That opens up a whole new world of performance.
  8. [WIP] Infernal Robotics - Next

    Save damping value to a text file OnDestroy?
  9. [WIP] Infernal Robotics - Next

    Couldn't it just be an uncontrolled extender with spring\damping?
  10. [WIP] Infernal Robotics - Next

    What about straight up IR shock absorbers? Doesn't look like any mod currently exists and I think they would be super useful. I know I would have uses for them.
  11. [WIP] Infernal Robotics - Next

    Well would you look at that. Just two weeks ago I was so bummed this configuration wouldnt work with the old servos. Dream come true. Thanks man. Works in combo with the old IR, just let it overwrite the files.
  12. What did you do in KSP today?

    If you've never seen "Stop Making Sense" put it on your list
  13. Hey that unity demo is awesome, way more complex then any of my arms. You could 100% control that from unity just like I do, you would just have to build the equivalent in KSP first. Also that IK info is super useful. My IK has a long way to go. I'm proud of it but I'm no mathematical genius. My IK code uses SOHCAHTOA, law of cosines, and simple logic for everything. It's way easier in Unity because you have built in functions for distance and angles. You don't need to calculate everything by hand. This is terrifying to me.
  14. What did you do in KSP today?

    "What did you do in ksp for the last 48 hours straight while your girlfriend was out of town"
  15. [WIP] Unity Controlled Robotic Plugins

    My gf was gone so I worked on this pretty much non stop over the weekend. (Also why the recording actually has sound). The hexapod now has full terrain mapping and navigation capabilities. Instead of using the vessel height to position the ground and foot targets, each foot target is now placed on the ground directly beneath it. Each hip target is now set according to the ground position of it't foot. There are two ways of setting the hip targets. Right now the hip targets are set at the average height of all the foot ground positions plus the target height. I've realized since recording the video it would be best to just set the hip targets so that the vessel is always the target height above the ground. Or some combination of the two. The first method helps going up hill, while the second is preferable for down hill. Also setting the hip height half way between the highest (foot ground + target height) and the lowest would be the way to insure each foot has the best chance of hitting it's target when going over extremely rugged terrain. The vessel also knows if it is traversing up a hill, is level, or traversing down a hill, and sets the color of the ground accordingly. Right now nothing changes according to that, but eventually the gait will respond to the different slopes. I tried taking it out to the mountains but I still need to find a way to orient the gyroscope to a level surface, even when the launch point is not level. The triangle begin drawn on the ground represents the leg group that is actually moving the hexapod forward. Building the terrain mapping box was pretty difficult, as there are 36 vertices being set each frame. It took a while but it was definitely worth it. Developing this process I found a couple of big mistakes in the gate code, which have now been fixed. The stride is now much smoother and more efficient than it used to be. I haven't done a top speed test yet after the fixes, but average speeds have picked up across the board. Still lots of tuning to be done. Next up is steering.