Eusth / HoneySelectVR

MIT License
109 stars 28 forks source link

Automatically warp in front of girls in the lobby #16

Open kideternal opened 7 years ago

kideternal commented 7 years ago

Viewing girls in the lobby is a pain because trigger-warping takes you to their point of view, since they're the only actor, and then you have to re-warp in front of them and reverse your rotation. Ideally, you'd just warp to them automatically as soon as they appear, which may just be desirable in all situations.

I messed with the code trying to get at least trigger-warping in front of them to work, but since only the actor's "eyes.forward" is exposed, and their eyes can take a moment to lock onto you, you can get undesirable results if you warp too quickly. Also, I couldn't figure out how to get it to just work in the lobby, but I'm super busy with other coding projects and largely unfamiliar with the wonderful stuff you've built.

kideternal commented 7 years ago

I had a semi-working version of this at one point, but since Actor.forward wasn't exposed, just Actor.eyes.forward, it would put you off at weird angles if you clicked before their eyes had a chance to lock on to you. (I've since reverted my code because other changes were released.)

I wasn't able to figure out how to detect when a new Actor is loaded (character is switched), so I instead compromised and made the controller's warp-trigger place you in front of the character whenever clicked if Actor.count=1. (No man in the scene.) It was better than nothing, but hopefully with your superior understanding of the scene you can auto-warp when a character is switched. (And actually, it might be worth exploring auto-warping whenever the character's H position changes as well, as they often warp around the room without you.)

Eusth commented 7 years ago

You can probably just use the forward vector of the HoneyActor object. An event might be interesting to detect new actors added to that particular scene.

Auto-teleporting is a thing I've been meaning to implement for ages.