simple machines forum

Please login or register.

Login with username, password and session length
 

News:

Remember to make your own backup of posts before submitting.

 
 

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Holey Moley

Pages: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 ... 58
151
Help / Re: x2mdl/x2mm3d download (2021)
« on: April 15, 2021, 04:27:09 AM »
Critical Fix / mdl2x.exe added to ZIP

(http://www.swordofmoonlight.net/holy/x2mdl.zip)

I've patched x2mdl.exe to fix a problem I created by not testing code that I added to add a dummy part to merge control-points into their parent when there isn't a mesh in the part... This is likely to happen for a base CP except historically hard body animations omit this CP (implicitly defining it as 0,0,0) and a soft body animation historically only has one part, so it will necessarily have a mesh unless it's something like KF2's Fire Elemental that uses an SFX instead.

The bug happens because the part array is reallocated and that caused it to automatically deallocate any memory attached to it (I'd forgotten it used C++ destructors.)

Edited: I'm sure I meant to add the reason for this merge code was the arm.mdl model needs every part to map to a specific part of the arm, so the CP has to be merged into the hand or it will think the CP is the hand. Note that there is a fake CP in the arm.mdl file, but it's not a real CP, so it's not technically required.

Also I worked all day on this and merging parts for soft-body animations. Although I know that there is a way to have multi-part soft-body animations (and each part can be driven separately) no models have ever used that facility and I haven't explored it enough to unravel its inner workings.

I'd been trying to make KF2's skeletons walk. Their animation is pretty dopey as walking animations go, I think it's definitely something that should be improved on. But I was just trying to add a base CP so they can actually move off their spawn point. I'm not very good at this kind of animation (no real experience) and thought it might be easier to coordinate to move the CP independently of the body, so I added a new "joint", raised off the ground, and this showed that the hybrid system I'd setup didn't work correctly for joints that aren't bound to 0,0,0.

I plan to rebuild the skeleton animations as hard (aka skeletal) animations, and then improve their walk cycle under better conditions. I think probably KF2's walking patterns are just straight lines, however I've tried to modulate them to be less robotic for my project. I'm not sure why, at low/chaotic framerates KF2 gets away with a lot I think that just doesn't read at a smooth 60 fps.

EDITED: While I was uploading the source code I was reminded recently I modified mdl2x (not x2mdl) to write out material names in the X file (which it should've always done) and so I felt like may as well add that program to the pot since the source code is saved alongside it I think. Note, mdl2x writes Microsoft's X files in the "format" SOM's tools understand. (X is a virtually dead format which suffered I think because of its attachment to Microsoft and because no one used Microsoft's library to read/write them so there are so many different "dialects" of it and most programs have their own "dialect" of it instead of being written against the file format itself, e.g. its specification.)

EDITED: If you set D3DXF_FILEFORMAT=1 as a command-line "environment variable" mdl2x will write text files.

152
So this (pictured) is what I've been wasting the past couple days doing. I sometimes doubt the wisdom of my choices of activities. When I got this model into Blender I couldn't figure out what to do next. I don't do a lot of 3D modeling, and it's been years since I modeled something from scratch.

I decided the best way to start would be to make a "skeleton" for Aleph except not in the usual way, since he's seated. I had to make reverse skeleton, and then pull it back into a standing position. The results in the picture are about as far as I could take it. I used my MM3D software to do this, mainly because I've never used Blender to do animation work, and it was very simple... except for the fact that this really put it to the test, and as usual it turned up a lot of bugs that I had to stop and work on fixes for. That's how you improve new software. But that was the bulk of my time working on this.

Now I will probably shoot it back over to Blender and tweak it. One disappointing thing I found out (which should've been obvious) is my plan to be able to edit the 3D model from inside the animation mode turned out to not work when the vertices have more than one attachment to the skeleton. I may yet find a solution to that, but there's no perfect solution to it, and this will make my idea of using the soft-body mode to tweak kinks in the skeletal animation a lot less attractive if I don't find a solution. If it's not practical then what would help is two viewports showing the model in both modes at the same time, but this will probably be a hard thing to set up in UI terms. Anyway, I have to go back to the drawing board there.

As I'm working on this I'm very seriously considering adding this soft skeleton facility to SOM before I'm done with it, because to dismember this model would be a lot of work and might not look right, even though at a minimum the arms probably need to be separated at the shoulder since SOM only shows the arms. Secondly soft body animation doesn't work for the arms. And third the arms are unique in that they're the only model (besides the gold coin and shadows) that never appears in the editing tools. That means I can add the facility without having to overhaul all of the tools to work with it immediately. Generally I'm adverse to doing work I know I'll have to just discard later. In my mind that's wasted time that's easily avoided. For that reason I see this as a real possibility. If I do this a side-effect will also be finally combining MDO and MDL files because there's no other way to do it. So that will be a big milestone. And I see this as an approachable way to break these tasks up into smaller more manageable tasks over time. (Edited: It will also require a new way to attach equipment to the arms... they'll have to be full arm models just like the arms but without animations. I've been wanting to do this because I feel like the current way involves way too many files and too much coordination.)

Note, on Aleph here his coat is probably down too low on him. It's stretched out in a way that's unavoidable. But it's sill neat to see his character model standing up. No doubt many sitting character models will have undergo this process in the future to bring all of this gold into SOM's treasure trove.

Edited: Just a fun fact. That asymmetry below his belt is because there's a strip of polygons that was clearly meant to be a second strap for his sword to hang on. In the final model it was textured over instead, but the polygons weren't removed. In this image it's stretched out like everything else. Maybe I should have pulled it up around his belt instead. FWIW this MM3D software doesn't have great facilities for working with vertex weights. It's something that needs attention.

153
Beginner and other Nonsense / Re: Re: Papercraft
« on: April 09, 2021, 03:31:16 AM »
Here (http://www.swordofmoonlight.net/bbs2/index.php?topic=286.msg3138#msg3138) are some KFIII models for ghost Aleph/Alexander and the Exselector sword (all three forms.)

154
Here (pictured) are a couple imports from King's Field III. There's a nonzero chance both of these guys will appear in this project. The Exselector may appear in the system menu. It won't be so odd because it will be technically distinct from the game itself, like a modern day game system's menu. I'm trying to adapt Aleph's model into a VR avatar (in game body double) and use him in place of the original arms, because I don't think they will fly. That said I don't intend to include Aleph's coat here. I'm not really sure what to do about clothing. I will probably use this get up until I have an idea for an original outfit, and eventually provide both options if not more. I can't not include the KFIII outfit (it honestly looks like head-to-toe denim) for old-time-sake.

I guess his red and yellow fabric could be a shirt and stalkings. His skin appears olive tone here, but I think it's very light in the game. I know KF2's textures are much darker and lower contrast than they appear in the game. I assume KF3 is identical, although I don't know what is the mechanism. The same goes for these Exselector models. I think the rainbow color would be more washed out and brighter in the game. I've actually added some fake occlusion shading to Aleph to brighten him for his picture. I think it would be really cool if a single model of the Exselector could smoothly morph between all three of its forms. That would be a really cool progress indicator :xd:

EDITED: I've attached the 3D model files... Aleph's for this (https://www.reddit.com/r/KingsField/comments/mmnlcd/calling_artistsdesigners_reddit_contest_to_design/) contest to design clothing for Aleph to wear for this King's Field II project.

155
Beginner and other Nonsense / Re: STICKY: Random News
« on: April 03, 2021, 11:11:00 PM »
Today I made menus sandwich the 3d models between the text and frames so they're no more behind glass. It's a little weird but I think the pros of it outweigh the cons. On the Equip screen it's especially awkward I think to put the equipment models behind the menus. On the other screens they're not as obscured, so it works a little better.

But overall, especially in VR putting the 3D on a back layer is confusing for depth perception cues, and not washing out their colors and having them feel more in your face works out better.

I'm planning to let the analog sticks manipulate the models sometime when it's convenient. It will be at the same time I overhaul how items are interacted with on the ground to be more like King's Field II. Then it will make more sense for them to be in the foreground. It would also be nice to be able to push them into the background if it weren't for the fact the background is paper thin, and even if it wasn't it's not clear how the item would pass through it like a ghost. Time will tell.

Because the arm model is on the same depth buffer layer as the 3d models it now obscures the menus as well. Originally SOM cleared the depth buffer for the arm and 3d models, but this isn't good for performance/stability, so I've segmented the buffer. It's a little quirky but for practical reasons it seems like an easily avoided/ignored matter.

I don't know yet how this will play in VR. It may either look weird or interesting or unsettling. Speaking of VR I played L.A. Noire in VR two nights ago with PlayStation Move controllers for the first time with these controllers. It was a very unusual experience. I have a hard time imagining King's Field as one of these games where you interact with everything with your hands. The main trouble I had with it was with movement since it had no way to move laterally. This is a problem I find in many, many contemporary games, that seems like an oversight or something. If I couldn't move laterally in real-life I'd have to approach everything like I'm a big bus. I wonder if horses have to think in such terms... they tend to only understand forward and backward... which is not good when they're confronted with an obstacle since they tend to just try to plow through things and get themselves hurt. That's what L.A. Noire was like. If you need to look around a column to shoot at mobsters you couldn't just slide over (maybe you could move your body if the PSVR camera's "play area" wasn't so restricted) but have to instead back up like a car, and reverse, and before you know it's like parallel parking. This just seems like a mood killer and a very bad handicap, almost comical. I guess this is "tank controls" but you can't just turn, move, turn, when you're receiving gun fire!

P.S. I will probably try From Software's VR game next, but I've already seen it on YouTube so I know how it works, etc. in full detail, and it's story. It's weirdly like Dark Souls (just let it go FS!) even though the setting seems superficially different. I'll be interested to see what it looks like. Moss looks really nice... sometimes it looks real when the aliasing isn't popping. L.A. Noire didn't look very nice. I'm often surprised how amateur big company games can seem, and how ugly their graphical effects can come across. From Software is known for being a middle tier company, so I'm interested to see what they pull off. Moss's team is middle tier too I think, although it was pulled together from a lot of veterans fleeing big company culture from what I've seen (I got to work with one of its team members since I'm working with PlayStation VR on Windows.)

156
Help / Re: x2mdl/x2mm3d download (2021)
« on: March 28, 2021, 11:00:33 PM »
Two Fixes

(http://www.swordofmoonlight.net/holy/x2mdl.zip)

I've added a note to the first post (OP) but I will try to explain more here now (read the note first.)

Yesterday I spotted a problem with large deltas in the 60 fps upscale extension to SOM's player. This kicks in because it's hard to say if large delta's should be averaged or if they are "teleporting" to a new position. It turned out I'd inadvertently put the teleport on the wrong frame (of the two) and somehow that made a difference visually, noticeable as a glitch frame the an arm animation. (Honestly I find it odd that it could matter. I feel like there must be something more to this.)

But that just drew my attention to the fact that rotation deltas probably shouldn't be treated like this because Euler angles (which SOM uses) might not be shortest path. Actually I expected to have that problem in the beginning but mercifully it hasn't popped up so far.

So I made a change to stop doing that for rotation (which I may have to reverse course on if it causes problems) and this broke my "wind cutter" SFX model's spinning animation. Incidentally I realized not only is "wind cutter" hard to choose capitalization or hyphenation for it's also awfully close to the saying "cutting wind" in English. It's actually my favorite "magic" in King's Field but the logistics around its name gives me such a headache I think I'm going to have to change it or work around it.

So I looked at the data. For one the numbers were sometimes large enough to exceed the "teleportation" limit, and that didn't seem right. But also the rotation on the X and Z axis was oscillating around positive and negative 180 degrees, which wasn't good either. The oscillations are invisible since they're identical.

For some reason my original model itself was incorrect. I don't know how that could've happened. I think I made the animation myself from scratch but maybe not. After I remade it the deltas were under the arbitrary limit I'd set, but not by a lot. The animation spins 35 degrees in 1/30th of a second. That seems really fast, but I guess not as much as you think. But I wanted to remove that limit like I say, or try to.

So I looked at those oscillations and added some code to detect them. I don't know if the other axes can do this or if it's a "gimbal lock" (singularity) thing. Not having a concrete example I just stuck with this case. (I could flip the SFX on its side and see what happens.)

But too there was something wrong with the MDL file when converted to an MM3D file. It turned out there was a problem with removing the bind frame from it because its first frame was a blank, so there was no data for it. Instead the bind frame time needed to be shifted to make it the first frame. This isn't a problem for making MDL files but it is for converting them. I might have missed this for a less regular model than this rotating SFX. I hope I didn't for the ARM.MDL file. I should probably double check it. (I've made a note to do this and look at the XZ axes... although I'm worried if the latter is an issue it will make it dicey to mess with more than one axis.)

EDITED: I should add that upscaling animations to 60 fps is a temporary solution until I can get around to sampling the animations between frames. That wouldn't be too hard to do right now because the animation code has been rewritten/replaced more recently.

UPDATE: I warned there might be a problem I missed because the last frame wasn't in the animation when converting the MDL into MM3D. I think that's correct (I can never remember how these things work) since the last frame has 0 duration, which SOM can't represent, and where it would begin the animation loops. The thing is the Assimp viewer I used to preview the data I think always loops, so it looked like the loop was complete at the end of its time slider... which is how the source MM3D file is setup as well. (Funnily it seems like King's Field II's animation format defines the final frame and omits the first frame... which then must duplicate the final frame. Or maybe it has a special "flag" to instruct this behavior.)

157
Beginner and other Nonsense / Re: STICKY: Random News
« on: March 24, 2021, 11:53:41 AM »
A personal note

I haven't worked on SOM the past few days because of (wisdom tooth) dental surgery and my usual trips into town. On the plus side I got a leftover COVID vaccine at the pharmacy, and the second shot is timed for 4wks which is exactly my schedule for driving into town. (I'm not the ideal candidate for an early vaccine, but how could I say no? My mother got hers like two days before retiring because for some reason everyone at the university got one... I still don't understand why university personnel got one and not all teachers.)

The day before I spent most of my time with the PlayStation VR, mainly playing games on the PS4 because I have to plug it into the PS4 when its firmware resets (or something) since it reverts back to being green when that happens. (Something adds a purple filter to counteract the display's greenness. I have some code that adds a purple filter but I disabled it when I found out the PS4 installs one... only to find out it can go away after a little while of using it on Windows.)

Actually I just played one game (Moss) because I was reminded I don't have the magic wand controllers, which I'm not sure I was thinking about when I purchased some VR games on sale, including From Software's game. I ordered a used pair of wands (PlayStation Move) that I guess I can test with the Exselector project I'm going to turn my attention to any day now.

ATM there are three things I'm working on: 1) monster AI, behavior/clipping, 2) new inputs for the attack/magic buttons, and 3) I want to begin peripheral work with Exselector.

I'm using (2) to flesh out the animation infrastructure that (1) heavily relies on. And I want to dig into clipping for monsters because it's unacceptable in its present state. (I don't know if clipping glitches were as pronounced in the original version of SOM or if there's something about the current clipping code that makes it more "spectacular".) The handling of "checkpoints" for monsters is not good, I look forward to overhauling it at the same time I work on supporting layer-based checkpoints. Today I think I'm going to make the new shield system react to NPC clipping and use that opportunity to fix a behavioral problem where at a certain range monsters would automatically become aggressive and switch animations to attack... the problem is it causes animation glitches (maybe when there's no viable attack) so I've disabled it... but I think what it should do instead is make the monster aware of the player... which is not nearly as aggressive, but at least should be stable. I just don't think it makes sense to become aware at a certain distance (or how to determine that distance) so instead doing it as a response to contact (clipping) is what seems to make the most sense.

158
Devs / EXIT: Anti-aliasing announcement
« on: March 20, 2021, 07:06:09 PM »
Something of note occurred a while ago. Briefly, for a long time now Sword of Moonlight has had a unique anti-aliasing technique for which I’ve continued to develop complementary 3D image-based graphical effects. This line of work has matured and now has reached a conclusion. It started when I had an idea I thought could address its main weakness: that is it takes more than one image frame to create a double exposure image, which means it can’t anti-alias a single image by itself, or put another way: when a picture is moving it can’t do its job.

This is an economical solution because it doesn’t require any resources or time on the computer to compute its results. When a picture is moving it can be hard to make out its edges, so anti-aliasing isn’t as important. So it mostly washes out, except it’s still a legitimate mark against this technique. To solve this problem (with an equally no resources solution) (as well as it can be solved) the new complementary technique works to remove contrast on moving edges. This looks like an unfocused image on the moving edge.

Shortly after developing this it made sense to implement supersampling for Sword of Moonlight because this anti-aliasing system seems finished, and to supersample an anti-aliasing technique is a common final step, although it does significantly increase the hardware budget to enable supersampling. Supersampling doesn’t automatically buy you much, especially considering its cost. It requires an anti-aliasing strategy to justify its cost, such as the one Sword of Moonlight has. So, long story short, combining these developments produces a very high quality image.

A third thing happened around the same time that’s worth including here: in short, intense scrutiny of the edge contrast technique made apparent deficiencies in the analog control system. A thorough investigation followed, in which not a fix, but a change was made that seemed miraculous in how it produced a much higher quality experience in terms of how movements are transferred from the analog game controller onto the screen. Without going too deep into a description how Sword of Moonlight actually works in this regard is to translate the sensor data from the controller into a very limited digital signal, and then convert that back into the movements you see on your screen. There are benefits to this process versus using the sensor data unprocessed but all that you need to know is the last conversion step is where the major leap occurred.

Finally, in the forum post attached to this blog item I’m going to be publishing previews of the next release, which will also include any patches in the meantime. I will explain the focus of the new release inside.

I've been meaning to sit down and write this blog post for a while now. I've written about this subject elsewhere but I want to commemorate it properly in the timeline.

I think the next release (I'm going to miss "1.2.3.4" :razz:) may be a longer wait than usual. But I'm going to make it available in this topic/thread well before it's officially published. Its focus is on upgrading the magic and weapon buttons similar to the extensive additions to the action button over the years. I may decide to include my planned upgrade to the menu button at the same time to complete the set.

I want to share the new features and may publish them in an incomplete form in my KF2 demo as well as in here in preview form. The difference between the final release version and the preview is only that the preview won't be in the updater menu, so it must be downloaded from this forum thread when it appears. The preview will be 1.2.3.5 and the final version will be 1.2.3.6. I'm also halting patches on the current release, if I can help it. If I feel any "quality of life" changes are worth sharing I'll patch this preview release from hereon out. (If I stumble on a serious bug I will try to patch the current release if my conscience gets to me.)

Work on the shield system is going well. It's pretty labor intensive and time consuming. The work that led up to it actually happened a year or even two years ago. So it's been an ongoing project. The new work I've done this year is already dozens of hours.  I couldn't tell you precisely, I just watch the days melt away. I decided I wanted to resume work on this because I was amped by this anti-aliasing/supersampling development, I wanted to treat myself to something I've withheld from myself since I first picked up Sword of Moonlight more than ten years ago.

Yesterday I was going to write this blog post but the day was consumed by first working on refining an effect where the shield must be pushed back when pushing against a wall (because there isn't room for it between the character and the wall and it creates strange optical illusions because it doesn't poke through the wall) by having the shield only push back when the said wall is in front of it. Usually push effects are 360 degrees because there's no sense of a "front" in a full 360 degree game (which most games aren't) however a shield is definitely in the front. It gets more complicated when turning a corner like this since cornering can be very iffy. The effect has to be stable rounding a corner, and also react to dashing (high speed) into a wall or other obstacle. But the worst of yesterday came later, that was a struggle with the walking effect that arises because the shield needs to be not synchronized with the walking effect (so the arm doesn't appeared glued to your head) but at the same time it's very close up and so any sudden movement in the effect is amplified by having the shield as a point of reference. This really put the walking effect code to the test. I got very close to burning out on it. The nastiest problem was since I've so far decided to let the "hop" input work with the shield raised. Hopping is inputted by poking the direction pad and tapping the action button simultaneously, which results in pretty high frequency input into the walking effect system that's followed up by a leap. That's probably the hardest test, i.e. to not glitch too badly, or ideally at all. I mostly got it working. Good enough for now. (This easily becomes a full day of work.)

For the record, right now the shield is pretty high quality in terms of button presses and movements. I've also improved my animation to the point it's presentable. I still have a number of aspects to address. I haven't decided how everything works. For regular jumping so far the shield is just forced to be lowered. That may not make sense if lugging a shield by your side is unbalanced for jumping. But as general rule most kinds of inputs force the shield to be lowered unless there's a reason not to do so. So far regular running doesn't lower it. Dashing and crouching doesn't. Most other things do. It comes back automatically if you're holding down the button.

May 12 Update:

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.5.zip

https://swordofmoonlight.itch.io/k/devlog/252682/shield-and-counterheavy-attack-demo

Attached is a DATA/MY folder that shows how to set this up. ItemEdit is needed to make Move Set profiles that just need to assign the number of these files to the first slot. It currently only supports the first slot. If left blank it uses the equipment type number, which is what the 2 and 5 files are. These are also used by the Nothing equipment. Note, to use the Nothing equipment you have to leave at least 2 item slots open. I've actually reserved 5 for later on.

159
Devs / Re: EXIT: 25th Anniversary Project
« on: March 18, 2021, 03:53:38 PM »
EDITED:

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.4.zip

Never say never, this patch does 3 things: 1) fixes an equip bug I introduced probably in the previous patch (fails to equip more than one slot) and 2) likely fixes sword magic input, which may possibly have been broken in SomEx.dll for a long time if not for the last decade :doh: and 3) should significantly improve performance for the shadows under NPCs...

On (3) I noticed my supersampling frame rate dipping today when looking at the ground. Because there's a big shadow underneath your feet I reasoned that's the reason. I removed some "clip" operations from the shader that were completely unnecessary except the texture needed to be clamped. Part of me wonders why I would've left it that way, except later it occurred to me I might have speculated throwing out the pixels could avoid hypothetical work in blending them, and every pixel has a "clip" operation for colorkey so I might not have thought anything of it.

Now I wonder if "clip" can be so costly if it's just for that shadow's shader for some reason or if it could greatly increase frame rates to disable colorkey for textures that don't need it, except I don't like that because it will implicitly discourage artists from using colorkey to tell them it may seriously impact frame rate. (I will probably do it. Maybe it can get me more supersampling frame rate in Moratheia.)

EDITED: 2.5hrs later I had to reupload with some major fixes after testing Moratheia. For one its arm had 5 bones and a moving CP I hadn't anticipated, but also changing maps (in a real game) turned up a few different problems. And one major problem in a memory leak when unloading the map. (Which I probably wouldn't have found if not some new/untested equipment change code in there that broke.) :sweatdrop:

160
Devs / Re: EXIT: 25th Anniversary Project
« on: March 14, 2021, 11:14:16 AM »
Final 1.2.3.4 Patch

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.4.zip

I've decided to finally retire this version (1.2.3.4) with this patch that (1) fixes the afterimages in the arm animation that I broke in recent patches (they were drawn on top of each other) and (2) fixes phantom pause that can happen when the program in "minimized" causing the game to keep playing and using potentially high CPU/GPU resources.

I'm planning to write a blog about the recent round of developments that culminated in the new supersampling mode and in its topic/thread I'm to float an odd numbered demo version 1.2.3.5 which will include important patches and tests of the new shield system as it's mid development. Odd numbered versions aren't available to the updater menu.

This was a very fun version but a hodgepodge of patches too. It's linked to my KF2 project's initial demo and happened to be "1-2-3-4" so I've stuck with it longer than I should, especially since my work has been unfocused here lately. I've got a lot of unfinished efforts underway. I've no particular goal in mind. I think the new "arm" enhancements is a good thing to structure a release around, but it's going to be a slow build to releasing it.

161
EDITED: I think I made a mistake yesterday. I've realized two things: 1) the idea about centering was wrong about the shield position... it should have been moved toward the center of the screen instead of away... which might actually pose some problems because the shield is already on the opposite side of the screen. I will have to give it thought. I think it looks better slightly on the opposite side, but not too far so... 2) in the new two arm skeleton the main shoulder actually isn't the root node... this means it's possible to animate the shoulders. I keep forgetting that...

It's also very convenient to work with the shoulders because they're at the bottom of the skeleton. My first thought is to remove the lunge effect and build it into the animation instead, however I'm not sure the lunge will look good unless the animation uses a nonlinear time step (like Bezier keys or something) which I'm not currently set up for, although it's something I want to add to my MM3D project. Often linear interpolation doesn't look right, but the "hard" animations aren't really subject to this because they have deltas for every frame, so it's just a matter of the exported animation being nonlinear... but for "soft" animation it's not as clear, since those are normally spread across multiple frames... so either what's needed is a hybrid animation or some built-in  support for interpolation modes for "soft" animations. The former seems like the better option if both is not an option.

So now I'm thinking the animations should move the shoulders, but not lunge, and when there's a shield and a weapon on screen it will need to compensate by treating the shoulders like a soft seesaw so which arm is in the foreground will trade places giving priority to the weapon arm.

162
Here are some images of KF2 with the Iron Gloves worn on the arms that appear when fighting. I swear I spent upwards of 8hrs editing the arm version of the gloves. I honestly don't know why it takes that long to adjust a 3D model. Time just seems to melt away in 3D modeling. I don't know if that's normal. It may just be a labor intensive activity. Rebuilding meshes can be difficult.

I haven't published it yet but as of today equipment is finally on the two arm setup. I didn't have to work on it because there's no arm equipment in the demo on itch.io since there's none at the start of the game. I made these gloves just so I could work on it. I'm not crazy about how they appear. They should be even whiter than they are, but I darkened the MDO materials some. I like how the gloves appear in the menus. It's weird how they don't really translate to being cool to look at on the arms.  I plan to redo the arms before I'm done with something completely different. The forearms are super long. I guess that's some trick of perspective that generally works for the weapons but not for the angle on the shield. Technically the original animations are the "soft" variety, so it may be sometimes in the game the forearms would shorten. But SOM only understands the hard variety for arms since there's a lot of special infrastructure involved for them.

The shield seen in the insert is not finished. It's very nice and a lot of work has gone into the new shield system, but there's a lot more work yet to be done for it. There's many different aspects and needs for shields.

I shared an image of shields in a dedicated topic/thread a while ago. Today I changed my shield animation to a more exaggerated or stylized one mainly for two reasons. One was these gloves are very bulky and have some teeth like appendages that project out. I made it to hold the shield so the teeth would not clip through it. The handle on the shield isn't ideal for that but it can be redesigned eventually. I don't know if this is a natural way to hold a shield. It's a little more statuesque, but is it practical I don't know. The other reason is for now I'm assuming the gloves can be used as makeshift shields to deflect attacks and I wanted the glove animation to be approximate to the shield animation. They don't have to be identical but I thought they should suggest each other at least. The other way of holding the shield just didn't look like how you'd hold up a gauntlet to protect yourself... or it didn't look right or good.

This new pose brings the shield much closer to your face, so it's larger on screen and when pulled toward you (or when pushed up against things) it now covers the entire screen, so you're forced to play blind. That really gives a suggestion of protecting your head with the shield. I thought about scaling back the distance or basing it on the hand location (which will probably happen eventually) but ultimately I feel fine with it.

Currently pressing both buttons pulls it up closer to the face. Once I get to managing the damage reduction provided by the shield this will be a little better than the regular protection. It takes two hands suggesting you're also pulling your limbs in to be behind the shield. And you can't run... well you can, but it pulls the shield down... because pressing 3 buttons is the full running mode. I'm a little concerned pressing both buttons is going to come into conflict with my eventual plan for holstering weapons that I was really happy with. I like this too (and it has other uses) so I worry what will be required to not be forced to choose between them or decide on a different inputs.

Alternative holstering inputs would have to rope in the Menu button, which I'm generally against. I've also realized that mapping the menu button to the face buttons  doesn't make sense because it ties up the thumbs which are needed to use the planned quick-select system. That tells me that the four shoulder buttons are going to be locked in for SOM. Tapping the menu button could conceivably have a different function, but the quick select is needed on the shoulders. A game like Armored Core might make tapping the Menu button rotate your "subweapons" instead of opening a menu but in King's Field menu is pretty normal to have handy.

Speaking of menus today I worked on delaying equipment changes until the arm equipment isn't visible onscreen. I was working around equipment things to manage the models for the left arm.

One last thing. Currently the arms are fused together so it's not simple to manipulate them independently (that's not implemented) but the centering changes for two arm weapons since being perfectly center generally matters a lot for a two arm animation. I was centering when the shield was up too. But since I changed the pose to move the shield even further to the right side of the screen I decided that the shield arm should be pushed a little off the side of the left screen. So I split the difference between centered and the position of single arm attacks when shields are on screen.

Currently the shoulder distance is fixed at 0.2 meters, which isn't the original SOM distance but is the KF2 distance. Eventually I'll work on extracting that distance from the ARM.MDL skeleton. The single arm distances is 0.14 meters, and for shield 0.17 meters. You'd have to match that 0.2 value to make a new arm model with two arms. I don't think it makes since to think of it as moving the head over (ouch on your neck) so instead I think of it as rotating your shoulders. But because the arms are fused they don't currently have the right depth for that. It actually wouldn't be very hard to move the shoulders independently, but "hard" is relative in writing software... it really comes down to making a day of work out of every little possible project. You have to pick your battles day by day. But anyway I think this looks better to make the shield arm less prominent and pull the weapon arm closer to the center area. I'm going to redo KF2's arm animations (and design too) but the vertical swords for example look like meat slicers, and they tend to look better closer to the center than off in the margins, and even for the knife (Dagger) it's better if the target zone is as close to center as possible.

Strikeout: Day 2 I realized I was being stupid yesterday because it doesn't make sense to push the shield to the left if the centering is supposed to represent twisting shoulders. And it even makes sense to put the shield shoulder further out as if leading with the shield... I'm going to edit a new idea I had into a new reply post...

163
Devs / Re: EXIT: 25th Anniversary Project
« on: March 06, 2021, 10:49:15 PM »
EDITED: Just for anyone getting notifications every time I reupload my KF2 demo there's a new patch that addresses a glitch where the menus showed the arm/weapon model incorrectly and a fix for unmuting the Master Volume at full volume (16) which wasn't working, and... also using F12 to manage the volume (with ctrl/shift) now repeats when held down (the R3 button is mapped to F12). Note, you can just press +/- on the keyboard.

(The glitch was caused by a recent change to "draw" the arms first so any pixels behind it can be skipped to reduce performance hiccups as a result of a large increase in pixels when your giant arms cover the whole screen.)

164
Devs / Re: EXIT: 25th Anniversary Project
« on: March 03, 2021, 10:04:24 PM »
Important Fix Patch

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.4.zip

Somehow about half the resolutions were "cursed" by the change I made how the effects depth buffer is cleared (reset) to try to get a little bit better performance.

I still don't quite understand it, but only my KF2 project seemed to be affected, and the solution is when the "render target" changes it automatically resets the "view port" so it just needed to save/restore the view port. It looked just like the buffer wasn't getting cleared (water would disappear for one thing, sometime a pure black screen--yikes) but there must be another explanation.

Anyway this fixes it, and I hope no one had this bad experience with my demo in the past so many days since that change. The weirdest thing is it only hit some screen resolution settings, which makes absolutely no sense.

165
Devs / Re: EXIT: 25th Anniversary Project
« on: March 02, 2021, 12:08:28 AM »
EDITED: DualSense (PS5) Patch

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.4.zip

This just detects a PS5 controller. It behaves identically to the PS4 controller but it has a different device ID so wasn't previously supported (BTW I got a DualSense and am looking at adding support for advanced PS4/PS5 controller features the XInput (XBox) system doesn't have analogues for.)

Pages: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 ... 58