66493466e99b9

66493466e9ed7
1 Guest is here.
 

66493466ea5beendwars

66493466ea63e
Hello there!

I wanted to share with you an idea I had for a while and find out if it is at all possible. (along with which tools to use. I can't for the life of me find a working blender import/export plugin) This will make it possible to add mouth animation at certain NPC in the game and it will make it relatively easy. This method is largely inspired from the Vampire Redemption game, where they use basically the same system. (Losely speaking) We basically only need to add a single joint to the models, please see the below image:



This joint will be connected to the head joint. (I called it "chin" in the image) Polygons that make up lower lip/mouth, lower teeth and chin will be assigned to this chin joint. Each time chin joint moves down, mouth will open.

How would we utilize this joint? Each time a living NPC speaks in front of the player, said NPC usually uses a unique animation that's only used during that. (Like the first hologram NPC talking and shooting himself in the head or dying NPC who reaches and speaks to the player) We would need to edit those animations ever so slightly to add movement to the chin joint. This can be done in a way to match the speech. (Like I said, this is basically what Vampire Redemption game does and it will work for sure.)

Since most most humanoid enemies in the game are horribly mutated, they don't need this, this is only for the living NPC's.

So, what do you think? Is this a good idea? Does it have any chance of working?

Lastly, I intend to help out will the model/texture work, I need to find a blender import/export plugin as I don't have 3ds max. Could any of you give me pointers?

66493466ea9efendwars

66493466eaa45
This sounds like an awesome idea. If this has any chance of working, please please do it! It would do wonders for immersion. And it would be useful for custom story mods as well.

This is something I imagine devs would do if they just had a few months to polish. Just brilliant.

66493466eab48voodoo47

66493466eab96
NewDark actually supports Soldier of Fortune style mouth animation (just texture changes, really), a proof of concept video is posted on TTLG.

while not exactly amazing, this would work well enough with the vanilla Thief/SS2 AI models, I'd imagine.

66493466eaf35endwars

66493466eaf84
Yeah, but that's not what I am trying to do. That's just texture animation and it looks... odd to say the least. Not to mention, while it would work for the vanilla models, it wouldn't work with the Rebirth models, because mouth area needs to be flat for that method to work and Rebirth models have actual lips.

Anyway, I am not even sure if what I suggested would even work with the engine, we need a proof of concept and I can't even figure out how to edit AI models, joints and animations. Only proper blender plugin I could find was for static models.

Maybe @RocketMan or @Paynamia would know if this could be made to work. In any other game, doing this kind of thing wouldn't be impossible, but I can't be sure about Dark engine.

66493466eb0f5voodoo47

66493466eb145
I'm (wildly) guessing that once the mouth joint is added, a custom motion would have to be generated with the (new?) motion editor. so the questions you are asking here are, "can we add a custom joint to a model?", and "can we create a motion for it?", I guess.

I'm pretty sure the list of joints Dark recognizes is hardcoded/non-editable, but not sure whether this would actually pose a problem.

66493466eb76eendwars

66493466eb7b2
I'm (wildly) guessing that once the mouth joint is added, a custom motion would have to be generated with the (new?) motion editor. so the questions you are asking here are, "can we add a custom joint to a model?", and "can we create a motion for it?", I guess.

I would guess pretty much the same thing. Motions (or as I called it, animations) would need to be edited as well. When I said it would be relatively easy, it was based on my previous experience, but since I have no experience editing SS2, I have idea.

Since I don't have access to 3ds max, I can't use the new motion tool, so this makes it impossible for me to even test if it would work.

I'm pretty sure the list of joints Dark recognizes is hardcoded/non-editable, but not sure whether this would actually pose a problem.

That's what I am afraid of. Which is why I am not sure if it can be done or not. It sure would be nice if it was possible.

66493466eb886endwars

66493466eb8df
If this works, it would be brilliant, but if it is hardcoded, it might not be possible at all. It is sad. It was a great idea.

I am sure someone here might be able to help you. They have done many great things here.

66493466eb984voodoo47

66493466eb9d0
It's not like people haven't managed to work around the engine limitations before.

66493466ebd23RocketMan

66493466ebd83
I don't have sufficient technical knowledge to answer with certainty but my gut feel is the same as Voodoo's.  Chin movement requires limit planes that don't yet exist to define the stretchy polygons and a new joint.  I doubt you can just add these without altering the code to expect them.

However if you want to put the issue to bed, you could do exactly that and add 2 planes, a joint, give them appropriate names and if you post it here I'll compile it for you.

66493466ebe86endwars

66493466ec230
Sorry for the late reply. Thank you for the offer, but even after hours of trying, I still can't seem too import files into the blender at the moment. Only import plugin I could find either crashes blender each time I try, or it simply doesn't load the model and the joints properly. I tried using older versions of blender, but no joy. Most likely case there is something wrong with the plugin I downloaded.

It is 2 AM here, I will try again tomorrow.

EDIT: If you could point me to correct plugin to use, this would be a lot easier.
« Last Edit: 11. January 2021, 09:43:00 by endwars »
66493466ec5d1
If the engine supported arbitrary skeleton definitions, it would be possible to create characters with jaws, fingers, tails, wings or tentacles in any combination. As far as I know, this wouldn't even affect the skeleton, animation sequence and database formats. But the engine has only a few predefined skeletons for the hardcoded creature types.
66493466ec7e1
Or you could just draw a mask on each NPC's face, and have Shodan remark how the Covid situation is *still* ongoing, so everyone should wear a mask. Even the androids.

But seriously, whilst I would like to see movable mouths (even better if they are synced with the individual sound that the NPC is making at that precise moment) if it's not possible then I don't think it's that important. It would certainly be important if the games' graphics were more realistic, but given the large gap between the NPC's appearance and something approaching reality, I don't feel like the lack of a moving mouth harms the immersion. Most of the immersion in the game comes from the atmosphere and the convincing way that NPCs can appear randomly (unlike in Prey 2017, where the random appearance of enemies is more predictable, due to the more limited spawing points and Prey's NPCs not being able to wander too convincingly), and the well done, though sometimes sparse, environmental details of the ship. The living areas could do with more personalisation and private possessions, to make them more convicning, though.

66493466ec8d9
Also I think there are like 2 short occasions where human NPCs speak in SS2. And I cannot imagine this working for hybrids without unintentional comedy.

66493466ecd7bendwars

66493466ecdd6
Kolya
I also think if it works this should be only used in human NPC's.

I can think of at least 3 instances human NPC's talking. One hologram, one dying and one behind glass.

I never reached the late stages of the game so I cannot be sure.

JDoran
I would say rebirth human NPC models are kinda closer to being realistic compared to the original. So this method would work well on them. Since majority of the players use the updated rebirth models, this would compliment it nicely.

I really believe this will work. I would try it myself, but my modelling knowledge never got past milkshape 3d.
« Last Edit: 11. January 2021, 21:20:25 by endwars »

66493466ed1ddunn_atropos

66493466ed22f
And I cannot imagine this working for hybrids without unintentional comedy.

66493466ed368
*cough* So I went to the doctor and I said: Whenever I drink tea I have this piercing pain in my eye?
And she said: Have you tried taking the spoon out of the cup?

*sparse clapping*

Thank you! Thank you everyone!

66493466ed490endwars

66493466ed4da
After hours of trying fruitlessly, I was finally able to import a model to the blender. Issue seems to be on my end but I am not sure.

I imported the gunghost model to test it, I noticed mesh itself has a lot of issues that needs to be corrected, but it at least has an open mouth, so it would be easier to work with. I decided best way to do this would be to add the extra joint to the neck (like a branch) since it would require less movement for more realistic mouth movement. But then I realized I have no idea how to extract the armature (or skeleton or whatever you might call it) in order to add the extra joint. Any help?

Also, meshes themselves could be a lot smoother, but most vertices (body parts) seem to be disconnected for some reason. Is there an engine related reason it is this way? Can I edit to improve these models without worrying about breaking them? Lastly, if I improve these models, would anyone be willing to compile them?

66493466ed744endwars

66493466ed797
endwars
So... how goes the project? Any progress?

66493466eda32endwars

66493466eda89
lastmaster
To answer your question.. not great.

It seems System Shock 2 doesn't use conventional joints, but an archaic system of boxes and planes.

At first I was a bit confused when RocketMan said to add two plains to make it work, but after extensive research, I kinda understand. What I don't understand is, if I did that and if it had a chance of working, how could I possibly limit the effect to the mouth area only? There is no way to assign specific vertices to any joint tell the game "these are the only verts this joint will move".  I imagine the whole area between the two plains would move, which would be too finnicky and not at all desirable.


See the below image:


If you could assign only the selected areas of the mesh, it would work brilliantly. But as far as I can tell, there is no clean way to do this.

66493466ee0e9sarge945

66493466ee185
lastmaster
1 Hologram? If you mean the ghosts, there's at least 2 that talk at length. There's the "I can't seem to find my card. Can someone let me out" guy in medsci1, and there's the *totally not goggles* headshot ghost in engineering.

There are problably more talking ghosts in the game.

Kolya
So I told my friend Dan about a new data wafer I found on Tau-Ceti V. I didn't know what to call it

When I asked for a name, he responded "I don't know, I haven't seen it yet. Show Dan"
66493466ee476
It seems System Shock 2 doesn't use conventional joints, but an archaic system of boxes and planes.
It's the model compiler that uses this system, not the game. In the compiled models, vertices are bound to bones in a fairly conventional way.

66493466ee512endwars

66493466ee55e
So... how would I utilize that?
1 Guest is here.
Don't step on corn! Flag the corn.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
66493466ee667