Jump to content
The Dark Mod Forums

Request for custom model


Goldwell
 Share

Recommended Posts

Would it be possible to change door / lid animation's curve from linear interpolation to more natural bezier curve? Here at 17:50 it's explained why it's important: http://www.gdcvault.com/play/1020583/Animation-Bootcamp-An-Indie-Approach

I don't understand... the hinge position is static for your ottoman, so you want the lid to pivot about a stationary axis (which is what it does). It's not like that gun where you have both translation and rotation happening at the same time.

Link to comment
Share on other sites

I guess it's subtle. Currently the speed of rotation is constant, which is robotic and unnatural. Normally human movement, e.g. that of hand opening something accelerates at the beginning and slows down just before end. For example automatic head turning of NPCs follows that rule (although I would tweak it if I could). Right now lid starts at constant speed and then stops immediately. My example shows curve of that rotation - first how it looks now and then how I would see it.

It's only a model...

Link to comment
Share on other sites

Movers (for example, an elevator) include code for acceleration and deceleration.

 

Doors (and lids are doors) do not.

 

I'm guessing that it was designed this way because doors spend very little time moving, and travel short distances. Things like an elevator are big and heavy and spend a lot of time getting to where they need to be and travel longer distances. So in the case of movers, a bit of acceleration and deceleration will be noticed, especially if there are sounds associated with acceleration and deceleration. Acceleration and deceleration on doors won't be noticed.

 

While it would be nice to model the real world in all instances, we have hundreds of problems that need addressing (and very few coders), and after 7 years, it doesn't seem worthwhile to add a MESS of code to door movement to simulate something that most people just aren't going to notice. All the code that touches door movement assumes a linear translation (of time and/or distance and/or angle), and so it's more than just changing the door code.

 

Mappers, of course, are free to create custom doors (and lids) that aren't doors, but movers (I've done this myself), which gives them access to acceleration and deceleration.

 

My two cents.

Link to comment
Share on other sites

Done and here is a small taster vid for your enjoyment -

 

https://www.youtube.com/watch?v=DaU0bi_OI2A

 

Makin me really giddy when lookin at dis. Also liking the soundscape on a side note. Only thing that stuck out to me when I saw the video was that I must have set noselfshadows on the chair's material (since the moonlight was casting through the back). That reminds me I still need to figure out what's up with my custom collision/shadow meshes when I finalize the exports with Blender. Someday I may be able to give you the optimized version. One that also allows the other ottoman to be moved around as a phys object.

 

Would it be possible to change door / lid animation's curve from linear interpolation to more natural bezier curve? Here at 17:50 it's explained why it's important: http://www.gdcvault.com/play/1020583/Animation-Bootcamp-An-Indie-Approach

 

Yeah honestly if this were done on pretty much all hinged doors that would be fantastic. No prior knowledge on animations within id4 myself, but I know ease in/ease out really helps the believable factor 10x. :awesome:

Edited by Epifire

Modeler galore & co-authors literally everything

 

 

Link to comment
Share on other sites

@grayman
I understand that there are not enough coders. However I don't agree that no one would notice. Even if only subconsciously. Details matter. Doom 3 had indeed very fast doors, but they were also sliding. I don't recall any rotating doors in D3, hence the code. In Darkmod doors are rather slow. Also it's not about modelling real world but rather about aesthetics and what 'feels' right rather then what 'is' right.

 

Yeah honestly if this were done on pretty much all hinged doors that would be fantastic. No prior knowledge on animations within id4 myself, but I know ease in/ease out really helps the believable factor 10x. :awesome:

I agree.

It's only a model...

Link to comment
Share on other sites

Well, after actually looking at the code, I have to retract what I said above about doors not supporting acceleration/deceleration.

 

Set these values on the door:

 

accel_time N (seconds, default is zero)

decel_time M (seconds, default is zero)

 

By default, doors take 1.75 sec (move_time) to fully open, so make sure your accel and decel times are appropriate.

 

Accel and decel are linear.

 

Sorry about the confusion. It always helps to take your meds before opening your mouth!

Link to comment
Share on other sites

Sorry about the confusion. It always helps to take your meds before opening your mouth!

 

Or open your mouth before taking your meds. :laugh:

 

I don't mean to detract from the conversation but I couldn't resist that

Modeler galore & co-authors literally everything

 

 

Link to comment
Share on other sites

Set these values on the door:

 

accel_time N (seconds, default is zero)

decel_time M (seconds, default is zero)

 

By default, doors take 1.75 sec (move_time) to fully open, so make sure your accel and decel times are appropriate.

 

 

Would these values have any impact on things like AI noticing doors or sounds being reduced? Are those things coded by degrees or by time?

Link to comment
Share on other sites

Both are tested against % open (rotational degrees or sliding translation), so:

 

1 - An opening door with acceleration would take longer for an AI to notice it (at 20% open).

 

2 - An opening door with acceleration would take longer to reach no sound occlusion (at 50% open).

 

3 - A closing door with acceleration would take longer to start occluding sound (occlusion starts ramping up at 50% closed).

 

4 - A closing door with deceleration would take longer to reach full sound occlusion.

Link to comment
Share on other sites

That sounds right to me. Those things are based on how much the door is open, not how long it takes to open, so improving the visuals with acceleration and deceleration wouldn't affect those things unrealistically. Might have an undesirable effect on doorsounds, though we're probably talking milliseconds.

Link to comment
Share on other sites

Great. I added

accel_time 0.15
decel_time 0.6

to the ottoman prefab. Move_time is set to 0.75. Sum of accel and decel can be lower than move_time by the way.

 

 

This is a door with move_time 1.75 and

accel_time 0.7
decel_time 0.7

  • Like 3

It's only a model...

Link to comment
Share on other sites

Great. I added

accel_time 0.15
decel_time 0.6

to the ottoman prefab. Move_time is set to 0.75. Sum of accel and decel can be lower than move_time by the way.

 

 

This is a door with move_time 1.75 and

accel_time 0.7
decel_time 0.7

 

Looks great. Makes the motions feel blended. Only thing the wood door was missing was that slight return you had in the animated mover version (on the door_open sequence). Though for obvious reasons, I can understand why the entity based version wouldn't handle that. Will be keeping this in mind though for when I'm actually able to get to work on my own FM. It really is the little things that add a whole new level of polish.

Edited by Epifire

Modeler galore & co-authors literally everything

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share


  • Recent Status Updates

    • duzenko

      Please, can we finally group the missions by year in the game menu?
      · 3 replies
    • duzenko

      I vaguely recall someone recently complained about two-sided materials (curtains?) not getting lighting from both sides
      I just found a piece of code that's supposed to do just that
      Where was that discussed? (@nbohr1more?)
      · 8 replies
    • Xolvix

      I still play classic Doom (albeit with user-made mods and maps rather than the original campaign) on a regular basis. A game from the early 90's which has still got a healthy following in 2022. Pretty amazing.
      · 3 replies
    • Nort

      I'm beginning to understand why people who aren't into social clubbing "don't last long" on this project, and why it's so full of holes. When moderators are siding with bullies, by closing down threads that they derail, then I start to wonder if I should support the platform to begin with.
      I'm sure that the core development is solid, but when you're constantly tone policed and bullied, and moderators are playing into it too, then the project will just drive away talent, and replace it with socialites instead. ...and without talent, you only end up with a small skeleton crew trying to do everything themselves.
      ...so Dragofer and Airship Ballet, and all you other socialites, you win. From now on I'll just keep to myself. You'll never be able to do my work, but at least you'll be happy together, and that's what matters to you.
       
      Update
      Actually, I have to revise my statement:
      I actually messaged greebo - the top dog, I gather - about nbohr1more's outburst of insanity below, and since I haven't even heard back from him, I just have to assume that there's not a single core programmer here, who's not backing nbohr's threats. ...and that's bad.
      ...so if you're a newbie reading this, or an honest soul like ZergRush, then just slowly back out of these forums, run, and don't look back. This is nothing more than a cult posing as a game development project, using Thief and IDTech4 to sucker hopefuls in, to do work for them, while trying to cajole them into something going on behind the scenes, which apparently - according to nbohr - is something that should be hidden from the state. These people aren't programmers - they don't even understand things like how to fix the simplest bugs. All they have, is an engine, and an IP, and some sort of fascist social cult. There was some other project I saw being made in the Unreal Engine. Try joining that project. ...or start a project of your own. Anything but this asylum.
      Hopefully that was "divisive" enough for a final post, because at this point I really want people to leave this place. This project is, on a management level, just awful garbage, run by garbage people, apparently from the top down, and I'm just glad that they have a garbage place to stay, together, and hopefully forever.
      Nort
      · 9 replies
    • The Black Arrow  »  Araneidae

      A spidey! I love spideys 🕷️
      · 0 replies
×
×
  • Create New...