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 ... 58
106
Devs / Re: EXIT: Long time no update! (Sorry about that)
« on: December 22, 2021, 06:35:52 PM »
Feature Patch

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.6.zip
http://www.swordofmoonlight.net/text/日本語/最新.zip (Japanese)
http://www.swordofmoonlight.net/text/English/Neutral.zip

These are patch files for a potentially helpful commenting/annotation feature I've been working on (finishing up from when I dropped the project 3yrs ago) in the past two days. It also adds more aggressive categorization to the list on the right side of the image showing the big fat comment button below.



I've written more about this image here (http://www.swordofmoonlight.net/bbs2/index.php?topic=257.msg3255#msg3255) in this old topic/thread in case anyone's interested in it. It speaks to an eventual plan to add advanced programming to SOM's event system by tying this feature into the script/translation system, which can include normal open-ended "scripting" in the style programmer's prefer to these limited/clunky visual programming systems.

P.S. I'll probably get around to adding some balloon tips to this, and it shouldn't be hard to add a special style to the comment lines, I'm just not sure what style. Maybe they should be a little more gray? Bold? Or a certain color? I'm a little unsure.

107
Devs / Re: EXIT: Long time no update! (Sorry about that)
« on: December 19, 2021, 03:53:57 PM »
I got my KF2 project switched over to using this system today. It was very convenient. Because with it I'm putting the MM3D extension in the profiles it required some additional work that I've quietly patched. The x2mdl program also needed some changes to support some unique things that would only be of interest to anyone wanting to make custom art with it. It's been patched too.

I'll be eager to get the MSM and MHM files working to be so convenient also.

108
Devs / Re: EXIT: Long time no update! (Sorry about that)
« on: December 18, 2021, 12:06:07 PM »
PLEASE MAKE IT STOP (PATCH)

http://csv.swordofmoonlight.net/x2mdl.dll/1.0.0.2.zip

x2mdl.dll is updated for SVN Update

I shot myself in the foot with one of those patches that needed different behavior for MDL output than MM3D output (control point stuff never ends) and also ran into a problem (probably related now that I think about it) that was applying a CP rotation to the whole model for soft body models like the Slime. Basically a huge class of models I didn't notice. I really should do more testing before publishing things. I never learn. I really don't like posting these notices, but it seems the correct thing to do.

I think I'll delete the earlier patch notices to save readers the trouble...

Quote from: Good info from the older patches
A problem with this new system is if a bug gets into the cache or if something goes wrong and x2mdl.dll doesn't finish then the cache has to be invalidated. The simplest way is to remove the shortcut file if you know the model name (try SOM_PRM to see the model) or delete the files from the (%TEMP%\Swordofmoonlight.net\art) cache folder. I think eventually the tools like EneEdit will have a menu option for managing this, especially if it becomes a problem.

EDITED: Some good news, the optimized release mode build of x2mdl.dll runs way faster than the debug version, so the wait isn't really noticeable on single models, and probably won't be a big deal for converting lots of models when a game loads either.

109
Help / Re: x2mdl/x2mm3d download (2021)
« on: December 18, 2021, 10:25:44 AM »
Important MM3D fix

EDITED: Yesterday I uploaded an EXE file to https://github.com/mick-p1982/mm3d/releases instead of the full ZIP file with some extra documentation. I've also fixed a problem with materials not having their alpha blending mode initialized that didn't show up in debug builds (this even applies to opening files so it's kind of a big deal.) (There were two places where the value was initialized--a big part of my working on this MM3D project has been refactoring it's really chaotic and duplicitous code.)

110
Help / Re: x2mdl/x2mm3d download (2021)
« on: December 17, 2021, 03:37:08 PM »
These files are updated once again with notes in the top post (12/17/2021) after a very drawn out SomEx release focused on building x2mdl into SOM and thorough testing it.

Also the MM3D model editor is updated here (https://github.com/mick-p1982/mm3d/releases) to cover the alternative MDO blending mode and work better in a few new ways.

111
Devs / Re: EXIT: Long time no update! (Sorry about that)
« on: December 17, 2021, 01:03:35 PM »
Again, the software for viewing/editing MM3D files like these (http://svn.swordofmoonlight.net/Sword-of-Moonlight/data/enemy/model/) can be got here (https://github.com/mick-p1982/mm3d/releases) and I've just updated it to fix an old problem where the sense of material/lighting was inverted so that there's now visible lighting in the texture mapped mode and the selection triangles are lit up red.

The old software was set up to set materials by default to 20% ambient and 80% diffuse, which is more like how you set a light, whereas a material should be 100% on both by default. Likewise it set its lights (which aren't currently customizable) up like materials to compensate. I only recently noticed it was doing that, which explained the lighting problems.

I was thinking about adding some controls to adjust its lighting and background color (bright background is not good for SOM's additive blend materials) but I've stopped at this fix for now because I'd rather be working on SOM in the next few days. I'm pretty eager to get back to work in some capacity.

Some of the new models that I edited I dropped the ambient material level down on them so I could see their lighting. It won't effect how they appear in SOM but it will make them look a little darker now until they're corrected.

112
Devs / Re: EXIT: Long time no update! (Sorry about that)
« on: December 14, 2021, 10:31:24 AM »
patches

I noticed the new MM3D files made from MDO files had UVs that weren't on the origin (0,0 to 1,1) but offset by 1, so I've gone ahead and repaired them and x2mdl too. I almost decided to remove x2mdl.exe because it's too heavy to repair like this, however instead I've packaged it with x2mdl.dll so it will be updated at the same time. This required patching Somversion.dll because I'd never actually tested it with more than one file. Luckily I'd programmed everything this requires but just had to fix a few things since I'd not tested. (Edited: I actually did remove x2mdl.exe, so it requires updating x2mdl.dll to get it back.)

The x2mdl versions in the TOOL folder don't have this fix, although it's not likely to be a problem. The patch links follow in case anyone already downloaded these versions.

http://csv.swordofmoonlight.net/Somversion.dll/1.0.4.6.zip
http://csv.swordofmoonlight.net/x2mdl.dll/1.0.0.2.zip

SVN Update is required to fix these MM3D files, but it's justnot even a cosmetic fix unless the intent was to edit these files... as in the bad UV mapping doesn't change their appearance since they wraparound.

113
Devs / EXIT: Long time no update! (Sorry about that)
« on: December 14, 2021, 03:57:22 AM »
I’m pleased to announce I’ve completed the most grueling round of work I’ve ever done on Sword of Moonlight and all the new files are online for the taking.

I did two long release cycles back-to-back except the first was not published because it didn’t have anything to offer to the general public. What it was instead was a big task to bolt on an OpenGL based alternative mode for SOM because new VR peripherals for PC don’t work with Direct3D 9. I chose OpenGL because I’ve used it plenty in the past and the newer systems like Vulkan and Direct3D 11 or 12 are completely different in terms of their design and are much more complicated, so it would be an even bigger effort to write code for those and it would be very alien to my past experience.

Once I completed that task the OpenGL performance wasn’t good enough, so I wanted to experiment with the dynamic vertex buffers, since SOM only uses dynamic buffers, which OpenGL is not good for. But to do that it’s necessary to rebuild all of the model files, like the MDO files, and remove the MDL files, so I realized that the time had finally come to do a project I’ve long been considering to unify SOM’s model files and build an art system into SOM to make it aware of the art development process.

SOM’s animated model files inherited a lot of quirks from the PlayStation’s design and the model format used by Sony’s SDK. These were unsuited for PC. SOM has a better format called MDO but it’s not animated, so you can say that its team were relying on this Sony style format as a crutch that shouldn’t have been published to an unsuited system. As a result this format has to be converted into a MDO like layout when the game loads, which is bad for performance, and both formats had used very small vertex chunks, which seem to be almost a clerical error, that would make them 32 times smaller than the target vertex buffer, which always remained until now only 1/32nd full, the rest going to disuse.

Working on this ended up being the culmination of all of my time working on the model conversion tools since I originally started working on SOM. These tools were the first things users at the time asked for, however I developed them and their reception was lukewarm at best, so don’t give people what they ask for I guess is the moral of this story, or don’t expect them to be grateful. I never know what to expect in terms of details when I start a programming task, it’s hard to predict, but this project turned into a never-ending slog very fast, to the point for the first time in my career I did what video game developers call “crunch” for weeks on end. I didn’t do this because I had to hit a deadline. I did it because if I hadn’t I would grow crazy forever pushing this rock up a proverbial Sisyphean ramp… and at least if you focus singularly on a task it tends to help to distract from the difficulty and monotony of the task. That was my thinking anyway. In the end it took hundreds of hours and add that to the hundreds of hours that I’ve already poured into the conversion tools, which had to be entirely battle tested for this effort, which itself proved to be a big part of the work.

In practical terms how to think about this development is SOM now will act as if it works directly with your art files, but in fact what it does is monitor changes to your art files and when they change it rebuilds its proprietary runtime files to reflect your changes. This can take a little bit of time, so it will be experienced as a pause with a busy cursor, or the splash screen taking longer to lower.

To make all of SOM’s components comply with this change it was necessary to upgrade its level editor. I had to rewrite all of that tool’s graphics from scratch. But this is good because it finally brought it up to the same standard as the rest of SOM, where before it had been noticeably lacking; another thing I long wanted to address. Its mouse input model has also been upgraded, and the screens that use gray and white squares has been upgraded to show an impression of the tiles underneath them so that they’re not so disorienting as before.

In addition I had to do forensics on all of SOM’s built-in models to reverse them back to the state of art files and archive them in an MM3D format I’m using for my King’s Field II project. You can download pretty competent 3D modeling software from my Github to work with them. I made some corrections to them where I found major non-cosmetic issues, however I haven’t yet made the effort to fix their many blemishes, although this work has moved that goal within reach. I will try to speak to more details in the forum post attached to this blog post.

Note, for this update it's very important to use SVN Update to refresh all of your files because that's the main part of the change. I usually post a link to a new SomEx.dll file like this (http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.6.zip) one, but this file will be updated with the rest (although you'll still be prompted to upgrade it, which you should in case it's patched.)

For English readers, there are new buttons in the language package here (http://www.swordofmoonlight.net/text/English/Neutral.zip) which aren't extremely essential, but they offer a "Convert" feature in SOM_PRM and SOM_MAP which enables you to manually convert all of your art files in bulk. In SOM_MAP this is useful for making demos since you can tell it to generate data folders with just the runtime files that you need for a set of maps and nothing more, and use that as the basis for your game demo without including art files. (Edited: There's also some new error messages in them.)

This manual conversion system is a little bit different in that it also copies over runtime files where it doesn't find art files, so it's not strictly the same as rebuilding your cache to avoid running into load hiccups/waits, but if all of your models are represented by art files then it will be the same thing. All but a few weird MDL files that my x2mdl tool couldn't faithfully recreate--because they look like solid control points to it--are converted to art files, although I've not yet gotten to the level geometry files. The game never sees level files (it sees the compiled MPX files) so technically they're not part of the runtime file set, but I only neglected them now because I couldn't take anymore (delay) before publishing, and I hope I get them done in time for the next release.

The Convert button in SOM_PRM is supposed to let you select a subset of items on each screen, however it doesn't yet have a multi-selection model, so it just has to convert everything on said screen until I can get around to it. As for SOM_MAP I think it should generate everything. At first I thought it might be lacking, but I realized it was simple to also include SOM_SYS's starting inventory in its output, and also some odd models like the arm and shadow and gold coin. So it should build out a complete demo. In SOM_MAP this button is in the compile window called Prepare in the English language package.

For the new MM3D models you can use the program here (https://github.com/mick-p1982/mm3d/releases) called portable-mm3d.zip. I updated it last night but intend to do a little more work soon to improve the appearance of the texture model mode with respect to lighting and selection because with SOM's models its lighting is overpowered to the point that it may as well not exist. I've put a lot of work into this modeling software, but I didn't develop it from scratch. The original version was called Misfit Model 3D. I found a newer version (fork) called Maverick Model 3D. I'm calling my version (fork) Multimedia 3D. The others aren't compatible with these files.

The art system can work with any format in theory, but I'm not sure if other exchange formats are able to fully represent SOM's feature set, even though it's relatively simplistic. 3D file formats are just weird and nonstandard... to this day there's no standard thinking in terms of how to encode animations. The main page to watch for these things is this (http://www.swordofmoonlight.net/bbs2/index.php?topic=319.0) one. The x2mdl tool that I've developed originally as a tool for making MDL files is based on Assimp. It's an older version of Assimp but I don't think it's changed that much in the meantime. In theory what formats it accepts should be viable art formats. At one point I spent a good amount of time rewriting Assimp from scratch. That code lives in a code/Daedalus folder in the code downloaded with SOM. Unfortunately I never switched fully over to it, but I hope to one day because the x2mdl code (code/x2mdl) is very messy even by my own standards. I just can't commit to that right now, and what I didn't port much of to the rewrite was the actual importer code. That said I don't stand by the importers other than the main ones I've worked with and developed myself. I recommend the MM3D path if you can stand it, but if someone wants to work with a different format I will do all I can to make that work. I chose MM3D for SOM because I'm fully in control of it and it's a very close fit.

Something all of Assimp's loaders lack is support for soft animations. That's one reason I forked it since there was no movement happening in that direction. I've only implemented soft animation paths for the import code I've written myself. Another reason I forked it is I strongly disagree with how its importers work since they throw away connectivity data and don't work efficiently the way most proprietary formats work. (Not only are they inefficient for performance they're not good for writing maintainable/legible/brief code reflecting the structure of a target format.)

EDITED: I'm going to take a much needed break of sorts for a while. I hoped I could do another release before New Years but this one spiraled far into December, so I'm not expecting that to happen. I really want to pick up my King's Field II project so the next goal I have in mind is to implement level streaming, a la KFII and KFIII, that is always on everyone's lips when talking about King's Field but From Software neglected to include in SOM. Their team implemented very little more than the bare necessities to make a half passable PC version of the original King's Field (1994) that they only published in Japan. I'm not sure what will be required to implement streaming, but it feels like the right time to do it. I hope it's much simpler than this project turned out to be. Because it will deal a lot with level data it should be an opportune time to try to finish this art system with respect to level geometry. Level files also include the MHM clipping format which I intend to extend to static objects at the same time, hopefully included in the next release. For animated models my plan is to put clipping data in the MDL format. BTW, I forgot to say that how the new system unifies the model format is to combine MDO and MDL so that what you get is a hybrid where everything is a MDO file except there's animation data inside the MDL file, so neither has been discarded IOW.

114
Help / Re: x2mdl/x2mm3d download (2021)
« on: December 12, 2021, 11:07:35 AM »
final update

As of tonight I'm finally at the end of this project... luckily though at the very end I noticed a problem with an animation not matching its original, so I just have to work that out and probably endeavor to recheck/reconvert every single thing one last time. Unless this stumps me tomorrow I should be able to publish it by tomorrow.

BTW, RE my last post (#10) in here I've definitely, since, fixed/improved a number of things with that MM3D release, which was more just about ripping out ANGLE so I could compile it again and some usual troubles with wxWidgets/Windows. But I'm going to hold off before patching until sometime after the new release. It definitely has a problem with its lighting setup I want to tackle. I noticed yesterday the original author of the old Misfit Model 3D code probably did a very weird thing by flipping the relationships of lights and materials to set up its fixed lighting behavior. It defaults to 20% ambient and 80% diffuse, which would be normal for lights, but this is the materials, and the lights can't be changed (yet) so standard 100% 100% materials are completely flooded with light that isn't useful. And its selection highlight is a red light, which becomes invisible except on the gray solid mode material. It should probable be an emissive contribution instead of a light, but even then it's troublesome to use a single color since a red object will be invisible to red highlights. This is a constant problem with modeling software. It's a problem for the do_red extension to. I wonder if that's why I think in KF3 when you hit the monsters they also turn a little be see-through. And maybe a little bit white/pink too.

EDITED: This round of work has pushed me further than ever before to the brink of exhaustion. I've been working on it day-in-day-out double-time for weeks, as long as I can remember. It doesn't bode very well for anyone who ever wanted to make their own game system that it seems to be a near impossible task except for a very unconventional lifestyle to be able to do it, and even still just making a decent workflow change like this one takes such a large amount of work, when you could look at it as only a small part of the bigger picture in the grand scheme. I'm definitely psychically at my breaking point, and I know I have to a break of some kind after it's done. For the record, there's nothing especially technically difficult in the new code. It's more like a huge mountain of paperwork that seems to never end. There's also something very mentally exhausting about working with 3D model data transformation code for days on end. It's hard to describe it. It can be one of the most complicated/sprawling data structures that exists, and going from one form to another is not always straightforward... it's tempting to make it more straightforward by writing naive code with more moving parts. There's a tradeoff between intelligibility and performance. There's always a bit of finicky math in there too. Transforming between different coordinate systems and mathematical models can be a lot more complicated than you might think.

115
Help / Re: x2mdl/x2mm3d download (2021)
« on: December 08, 2021, 07:04:24 AM »
new MM3D release

https://github.com/mick-p1982/mm3d/releases/tag/win32-dec-2021 is a new version of the makeshift 3D modeling software I've developed which is meant to work with the new SOM model files I'm going to be publishing any day now. I've added notes above.

Strike-out: Please use this link https://github.com/mick-p1982/mm3d/releases for newer versions.

I had a really bad evening with it because for some its app always starts slow (something about wxWidgets) but now I got it to start fast but it would show a busy cursor (IDC_APPSTARTING) for like 5 seconds at the start. It was really dumb because the app worked fine. I spent hours trying to make it go away through programming fixes until it went away for mysterious reasons, at the very end... that I don't want to speculate on further. I just want to relate a frustrating evening sitting in the cold. It doesn't help I'm missing a cat lately.

There will be new and improved versions of the other tools/apps here in the coming days. They need to go up after the new release does. There's now (shortly) a version of x2mdl built-into SOM (technically a new DLL file) so using x2mdl/cpgen should be a thing of the past, but the renaming trick for x2mm3d.exe is still pretty useful to convert Assimp's formats to this MM3D format. The new system isn't technically limited to MM3D but I haven't worked with other formats, most don't have everything SOM needs. There will probably be issues with control-points that would need to be ironed out in order to use different formats. CPs are the most annoying part honestly.

There are some new convenient command-line switches for x2mdl but I haven't yet staked out ones for changing the output mode and the output location.

116
Devs / Re: EXIT: Anti-aliasing announcement
« on: November 20, 2021, 11:01:07 AM »
Bug in demo notice

ObjEdit (SOM_PRM) has a crash bug when opening a MDL file that I just learned about. I don't think I can easily fix this with a patch now.

I'm getting close to releasing it. But I still have a pretty long to-do list, so it could be a week or so...

It's really crazy how many little things there are to deal with in this area... they seem to never stop. I'm going to be very relieved to get this latest line of work somewhat behind me. It's been pretty miserable. Everything with the x2mdl project and MDL files has been really hard on me. Most of the troubles are just because of preserving the original set of MDL files. I've been working on this thing as much as I can stand at a time for 10 years, ever since the very beginning, but this time in particular has been rough... especially because it's time to tie up all the loose ends and pull it all together.

I even have a replacement for Assimp I started many years ago that I put a lot of work into, but this new release is still going to be using Assimp. I'm going to circle back and cleanup all of the code at some point. I just dread the work. If I don't do anything else in my life I want to preserve King's Field II for the future. Somehow that doesn't seem so bad.

117
Devs / Re: EXIT: Anti-aliasing announcement
« on: November 01, 2021, 07:15:29 AM »
Important patch

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

This is a must patch to fix some new/significant animation problems in this latest "demo" I somehow didn't notice before publishing it.

The big one is some animations like SOM's skeletons were drifting off center. (The reason for this has to do with converting 8-bit data to 255 versus -1 to detect the root joint that's supposed to stay pinned to 0,0,0.) A more humorous bug is the new scale factor was not updated for the arm_bicep extension so the arm had been missing above the elbow. (I had fixed it for the new MDL+MDO animations but at that point hadn't yet decided to move plain MDL over to a common scale factor.)

118
Devs / Re: EXIT: Anti-aliasing announcement
« on: October 14, 2021, 09:19:03 PM »
Bonus patch

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

A few days ago I had an idea to work on giving definition to the other two map views that shown flat gray tiles, since they can be very disorienting, especially on a full map. A lot of unexpected things came of exploring/implementing this.

Before I forget, SOM_MAP now loads instantly. This is because it had kept two sets of icons, one turned 90 degrees. To make the turned versions it had used the notoriously bad GetPixel/SetPixelV APIs. I was surprised that using those to make turned icons could be the bulk of its load time, compared to opening/processing so many files (on an SSD drive) but it was. In the end I actually got rid of the second set altogether and used its memory to hold the gray versions of the tiles. To do this was a bit of a squeaker because the sideways tiles needed the PlgBlt API that doesn't offer any "ROPs" like the others, which is actually a problem for inverting the white tiles, but that's done the same way SOM inverts the multi-selection tiles. The 4 colored circle icons also had to be switched over to TransparentBlt to act like an overlay. Really this just removed the 4 corner pixels because there's very slight (unintentional) aliasing artifacts that are a different color, which I intend to remove from the language packs at some point.

Then because of this enhancement I had to finally add the right-button dragging function to the "checkpoints" screen. But I found that to be difficult without fully overhauling the new click logic (CtrlLock) on the main screen. And I found that even though I changed the button name to CtrlLock to be plainspoken, that it wasn't actually functioning as if the Ctrl button were automatically held down. I worked on this most of the morning today. It now works perfectly I think. And the Ctrl key state shouldn't be able to get stuck anymore.

The checkpoint screen now works with just the left button. It works better this way I think. It flips the first tile and sets drug over tiles to the same result. I think it would be nice to have a multi-select (Shift) mode for this. I can't tell if something is broken, but multi-select only seems to work with the keyboard arrow keys. I.e. shifting with the mouse doesn't form a multi-selection, but it can start one. I have to look into this, but I did all of this very fast and don't want to spend more time on it. It may be rough too, but I hope not. I just checked for keyboard input on the checkpoint screen, it seems to invert the tile, so that's good, now the mouse and keyboard use the same inversion logic.

Again, the big unexpected find/news here is load time in my book, but the rest is a big improvement too.

119
Devs / Re: EXIT: Anti-aliasing announcement
« on: October 11, 2021, 04:00:08 PM »
EDITED: I've reuploaded (SomEx.dll) to add a fix (see next paragraph) and added a warning for a change to the games as a side-effect of this patch.

The fix has to do with "neighbors" on different elevations and cells without tiles (perhaps because their tile is on another layer) having been incorrect in the initial patch yesterday. There may still be some issues in this area.

120
Devs / Re: EXIT: Anti-aliasing announcement
« on: October 10, 2021, 06:15:50 PM »
New SOM_MAP demo!

WARNING: Installing this patch changes the timing of when textures are processed that can manifest as hiccups in the frame rate, that I intend to address in the next release. Since I was thinking about demoing SOM_MAP I hadn't thought about it when I posted this demo announcement. It may linger until the release after since that's going to deal with dynamic loading/streaming maps that will require some infrastructure for trickle loading stuff mid play.

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

This has been a long release period, so I'm putting out another demo that can really make SOM_MAP a much better experience, so I highly recommend it to anyone actively using SOM.

In the scheme of things this work on SOM_MAP is only about a 1wk or 1.5wk stop on the way, a little diversion, before moving onto the next leg of the next release's goal.

I will say something about it in a second, but I'm also uploading a new DLL called Exselector.dll that I don't recommend, but it can be used to try OpenGL with SomEx by setting directx_version_to_use_for_window=32 in the [Window] section of the Ex.ini file. There's not much use in this, but it's proof I actually worked on it for the past 3mo :rolleyes:

EDITED: Exselector.dll is so huge because of ANGLE. To try angle use 95 instead of 32, but it will be very bright because of a bug (and slow) but the bug was announced fixed 5 days ago, so I just have to download the new source code (assuming it's publicly available) and rebuild ANGLE (which is a pretty big task) to fix this problem, in which case I'll reupload a new copy of the same file to the same place that will fix the brightness problem.

I think I'm going to check-in some CODE too, since it's been a while since I last did so. Speaking of that, when I uploaded these DLL files, it was the first time I uploaded a large file with my new fiber Internet service, which really took me by surprise by how fast it went!

There are some critical fixes in this demo for using the new layer system. In the screenshot I've attached you can see 2 layers (of 7 total) for the first time visible together in SOM_MAP. And also notice there are "objects" on display that belong to the outer 8 tiles, which is a new first that can be toggled with the new "neighbors" button.

It's hard to tell in this image but it also has accurate lighting for a change. Because lighting can tend to look much darker in SOM_MAP than in the game (even though the pixels are the same, except for some effects) I've increased the starting brightness some so that it's not necessary to manually do it every time you turn on SOM_MAP. To control the lighting you need a mouse with a middle button, and ideally a fast wheel. I think intend to add the ability to hold the middle button down and drag to adjust the brightness, but it's not there yet, so a wheel is required. Pressing the middle-button will reset the brightness to the default, but this will be less than the extra added brightness I mentioned, since the default reflects the real lighting as you see in-game.

I'm going to add an extension to control this startup brightness with. The starting boost also applies to if you disable lighting. I've reduced the disabled lighting in SOM_MAP so it's not blinding, and I would do the same for the game if I knew where to look in MapComp to make the change (as soon as I stumble across it.) SOM_MAP reflects the disabled lighting, although I'd like to have a way to disable it just in SOM_MAP and not in the game too.

Finally you can also see transparency in the water. Those are MSM models (not objects) and how material properties are being assigned to the level geometry is to make a MDO file in the DATA/MAP/TEXTURE folder that has the properties you want. Then you can either name that file to match the texture (TXR) you want to assign those properties to, which will take precedence, and if not that, then just assign the textures you want to the polygons in that MDO file. The actual model(s) can just be a square swatch. There's a way to assign a UV animation to them too by attaching a fin to the square, but I'm not going to go into that here. Transparency also works correctly for the other elements. It did not before. To do it correct it needs to draw the models in two passes (transparency second) and sort the transparent elements.

The 3D parts of SOM_MAP are recreated in Direct3D 7 code, so that after this all of the tools are using D3D7, which is then translated to D3D9, so it's really D3D9. Originally SOM_MAP and SOM_PRM were programmed in D3D6. You no longer see SOM_PRM's model viewer since a few years ago because it now uses the DLC editors to display the models, which are written in D3D7. You know I found out just a month or so ago (or less) that D3D7 was either not yet out to the general public when SOM was published, or had just came out, so From Software's staff either had early access or really scrambled to upgrade the player component to D3D7.

The new D3D9 path has most of the graphics effects of the player component. In this screenshot it even has the chunky (2x2) dither effect that I don't necessarily recommend for the tools, but I haven't tried to write anything to have the tools use a different dither size than the game does. My KF2 project is using it. Everything is antialiased and I really had to get creative to make the image sharp and fix a Microsoft bug in the line drawing system that the grid and RGB axes use that would kick in when getting the "camera" too close to its lines.

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