A Source for New Tools
2016 Year in Review for Wall Worm
It's been six years since the birth of Wall Worm and one year since its marriage to Black Mesa and still there is exciting news to share with the Source modding community. Some of the new things are already here, and some others are on the horizon.
MDL Loader for 3ds Max
For several years I was at odds with the community on the idea of a MDL (Source Engine Model format) Importer for 3ds Max. My personal view for a long time was that one of the great benefits of using 3ds Max and Wall Worm as a game editor was that it made it easier to create custom content far easier than ever before—which is true, but short sighted. When I urged would-be level designers to try Max as the level editor and they realized that you couldn't easily represent existing Source models in Max, the notion was not so attractive to them.
It was myopia on my part to not pursue a MDL importer earlier.
Sometime in 2014 Dave Brennan, a game developer at Activision at the time, informed me of a pet project to view MDL files inside 3ds Max. He was considering donating it to Wall Worm. As Dave later told me, “I think I started that code in 2010, when I was stuck in a hotel room for a couple of days and only had a crappy laptop, so I couldn't run L4D mod tools, so I started writing a VMF viewer.” Ironically, that's the same year that Wall Worm was started.
Over the next two years we talked back and forth about it; at first we discussed possibly making it a commercial plugin or a feature of Wall Worm Pro. It was in limbo until finally early in 2016 Dave donated the entire code to Wall Worm. Dave left the fate of it up to me, as he no longer had time to work on it.
At that point I started working on the project. It was C++, which wasn't my specialty. I'd only dabbled in it up to that point. I started adapting the plugin into something I felt was more appropriate for the Source Engine community and tightly integrated into Wall Worm.
When Dave donated the code I couldn't really contain my excitement and hinted at this feature coming soon to Wall Worm. I knew that many people wanted this. But I probably should have been more prudent—because the words coming soon did not turn out to be accurate in the way I intended.
It wasn't just the Source community that wanted this. When I informed the Black Mesa team of this new fortune, the team was happy too. The specifics of what, why and how are for a future article. What is important is that Black Mesa took interest in this; when I struggled to finish and convert all the C++ functions to fit the framework in the time line I hoped, Black Mesa assigned programmer Chetan Jaggi and later Richard Geslot help attack the job.
Primarily over the last two months Geslot and I worked together to bring the MDL loader to where it is now. And now you can import MDL files straight from your game's VPK into 3ds Max as a new native geometry class. I chose to make this a new geometry class instead of a traditional importer because I wanted the MDL in Max to be a live link to the actual model, whereas making it an importer would have been static. This fits my goal for the level design aspect of 3ds Max for Source and cuts down the footprint of file size (as the mesh data is derived from external sources and is not saved in the Max scene).
Since the code was initially a donation to begin with, and since Black Mesa backed the project to completion, it was only fair to make this plugin free. It is now included in all versions of Wall Worm for 3ds Max 2015+.
As this post is being written, Black Mesa is in Early Access on Steam and is currently on sale. The team just released a patch that adds Linux support. So if you are happy about the new MDL Importer, show your appreciation and go get your copy of Black Mesa or send it as a gift to friends and family!
In 2015 Autodesk accepted me into their Beta program to test 3ds Max 2017. Later they promoted me to one of the Charter members to help participate directly with the developers in expressing opinions, concerns and ideas for 3ds Max. This year Autodesk gave me the title of Expert Elite. That progression of honors was actually a little bit surprising to me; although it's well known that I've been very passionate about 3ds Max for many years, I have also been very vocal on prominent CGI forums like CG Society, the Area and CG Press about various business decisions at Autodesk that don't sit well with me; those opinions have often been critical of Autodesk. My feeling on the rental-only model, for example, can only be described as acidic. So I did find it a surprising set of honors given my public stances at times.
Although I've been very critical of the business decisions, I've almost always held the developers in high regard. I've tried to both promote 3ds Max at large and share helpful information to developers at every opportunity. So perhaps that played a role. But it has been an honor, and I've taken great pride in communicating with the Max development team on issues that are near and dear to me (and affect the future of Wall Worm).
In any event, I've been privy to a lot of the innovations going on with 3ds Max. A few features, in particular, have me personally excited. I've already got pipelines to use some waiting for their public release. You'll just have to stay tuned to see what those are.
Wall Worm in General
The addition of MDL support in Wall Worm isn't the only new feature; but it did play a big role in many new features and changes. Because it uses actual models from the game, there is no longer a need for a Prop Library (which was slow and took up a lot of disk space). The integration fixed speeds in the VMF Importer. The last time I imported Esther (from Dear Esther) it took my computer an hour to import (on Max 2014). With some updates to the VMF Importer along with the new MDL plugin, it took five minutes in 3ds Max 2016.
Part of the speed increases affect other importers. Now the VMT/VTF importers can read straight from a VPK as well, further increasing speeds of bringing assets into Max.
Another big feature is a 4way blend DirectX Shader that comes with Wall Worm, along with functions to create 4way blend materials and export from Max. This shader allows you to paint 4way blends on displacements in 3ds Max. While not all Source Engine games support it, you'll find it in CS:GO and others. Both the VMF Importer and VMF Exporter support this in displacements. Documentation and a tutorial on this will come soon. The DirectX Shader was co-developed by Chetan Jaggi and myself.
There's a lot more, but you can find that on the Changelog or on the WW Forums. You must forgive me that I have not had time to update all of the documentation for every new feature or change in the last several months. But I did just update the VMF Importer docs to explain the latest functions. I also loaded Entity Cache Files so that 3ds Max 2017 users can use the entities of common games (as there is a bug with the FGD parser for the general WW in Max 2017).
Angry Teapot Level Design Contest
The due date for the Angry Teapot level design contest was pushed back to January 2, 2017. I chose this primarily because I know how much the new MDL plugin will help people make levels faster—and it wasn't released until after the original cutoff. I really hope to see some of you making something beautiful for this. The other developers who have promised prizes have some really cool things to offer; it's a great opportunity to expand your design toolkit!
Here are a couple teaser videos for current or upcoming tools. More to be released...
Fast Terrain Tools: Creating Blend Materials and Displacement Landscapes Quickly
Rocky Planes Into:
Introduction to Rocky