aa2g / AA2Unlimited

Modding framework for Artificial Academy 2
127 stars 36 forks source link

POV feature #5

Closed linkanon closed 7 years ago

linkanon commented 8 years ago

Hey, adding this issue so that it can be discussed not on 4chan.

A couple points:

I'll add more if I think of something

test release build: AAUnlimited_pov_test2

linkanon commented 8 years ago

This PR fixes a few bugs, namely:

DooMGuy87 commented 8 years ago

Thank you very much for this! This is something that this game really needed! While this is working really good, i noticed that the POV camera its positioned really low in the face and sometimes you can see the insides of the model. it would be nice if it could be positioned at eyes height. I dont know if its possible, but it would be nice adding a face tracking mode: Pressing any key makes one or both participants make eye track or avoid looking the camera. Thanks again for this, i really appreciate it.

linkanon commented 8 years ago

Camera position relative to the neck can already be adjusted in the config.txt (see this PR). X is left/right axis, Y is down/up axis, Z is back/front axis (supposedly, it changes in some positions but Y is consistent). To set it around eye height you should set fPOVOffsetY to ~1.5 - 2.0.

Since there won't be a single solution being able to change these offsets on the fly would solve this and many more issues.

Also added your suggestion to the first post.

DooMGuy87 commented 8 years ago

hi again, Ive tried setting the fPOVOffsetY to these values... didnt end good. in some poses (lets say cowgirl), the camera goes far back to the head and you can see the insides of the head model. On a side note, pressing the W key, sometimes it just doesnt work, and whenever it works, it just removes the hair, but it doesnt removes the face. Im using the HEXA Hair Pack if it helps... BTW despite these issues, the mod works really good (didnt get any crash), i hope to see more updates!

linkanon commented 8 years ago

Hey, lucky that I logged in. Try using the config I updated in the mega (AAUnlimited_pov_test2 folder). It will look better in some positions(e.g. cowgirl, sitting in lap) but will look bad in others(e.g. doggys, missionary) and there's not much you can do about it now. You can adjust X and Z offsets but you'll see it's hard to find something that fits most positions. The "POV is inside the head" bug happens when you don't have the faceless face for the actor(HEXAOC has it for males but there's no such thing for females for now). Also keep in mind that you don't see the changes until the model is reloaded, i.e. when you switch the undress state.

Basically if you're playing male and want POV experience do the following:

W in default camera will return both heads to normal but you'll see the changes after model reload.

AA2Hackanon commented 8 years ago

About the original points:

Also, the PC is not always the active actor. Certain positions switch them around, as does the arrow button in the top right corner

As for the eye offset, i guess clinging to a bone on the face is not a good idea when the face can be hidden. Maybe calculate a vector from neck to somewhere between the eyes and use it as a constant offset?

linkanon commented 8 years ago

I know that some positions swap passive/active actors but for the POV behavior both roles are remembered when the H starts for consistency purposes(so that we don't accidentally restore a wrong head)

Fixing the camera to the eyes is a bad idea indeed. I suggested still fixing it to the neck and the offsets would determine where the "between the eyes" is located. Thing is, while Y offset is consistent and obvious("up" basically ) X and Z are not. In some positions Z corresponds to "forward" and in others - "left", so fixing the offset to be perfect for one position will inevitably break it for others hence why I'm pushing for more camera controls.

AA2Hackanon commented 8 years ago
linkanon commented 8 years ago
AA2Hackanon commented 8 years ago

current master should contain a somewhat working implementation of that head scaling stuff. I also used position information about the two eye bones to put the camera half way between the eyes. I hope you still had an old master branch and this one works for you You are welcome to work on the pov feature. I'm currently working on something different (bone transformation, eventually additional sliders) and the todo list isn't exactly tiny, so I'm thankful for any help i can get

linkanon commented 8 years ago

Yeah, I'll be chipping in code. Current master version still has a few issues you should be aware of: no override rules apply(male nor female) and it crashes whenever I remove someone from the class. POV works though. For working overrides I have github history and the test build I linked in the first post. I'm hype for bodysliders.