673f9e11517ab

673f9e1152d6d
3 Guests are here.
 

673f9e1153406endwars

673f9e1153472
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?

673f9e11537b3endwars

673f9e115380b
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.

673f9e115390dvoodoo47

673f9e115395f
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.

673f9e1153d30endwars

673f9e1153d7b
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.

673f9e1153e7avoodoo47

673f9e1153eca
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.

673f9e1154335endwars

673f9e1154383
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.

673f9e115443dendwars

673f9e115448b
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.

673f9e115454dvoodoo47

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

673f9e1154899RocketMan

673f9e11548f1
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.

673f9e11549edendwars

673f9e1154a3a
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 »
673f9e1154bfe
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.
673f9e1154df1
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.

673f9e1154edf
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.

673f9e1155337endwars

673f9e11553d0
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 »

673f9e11557a8unn_atropos

673f9e1155809
And I cannot imagine this working for hybrids without unintentional comedy.

673f9e115597f
*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!

673f9e1155b56endwars

673f9e1155bb8
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?

673f9e1155e2eendwars

673f9e1155e89
endwars
So... how goes the project? Any progress?

673f9e11560feendwars

673f9e1156154
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.

673f9e11566desarge945

673f9e1156743
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"
673f9e1156a04
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.

673f9e1156b3bendwars

673f9e1156b8b
So... how would I utilize that?
3 Guests are here.
Tot und dürftig, wie ein Stoppelfeld;
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
673f9e1157bb5