Page 1 of 1

Allegorithmic Substance

Posted: Tue Dec 23, 2008 7:27 am
by Wretched_Wyx

I'm sure a good amount of you have heard of, and toyed with, MaPZone. Perhaps even ProFX. Well now Allegorithmic has another lovely gem coming out, Substance.

I've been in talks with the VP of Sales & Marketing about getting an free academic/indie license to implement Substance into the engine I've been working on... which is really in it's infancy. So far it seems all locked in, but for fear of screwing up relations with Allegorithmic (since I haven't really been told what's okay or not to divulge) I can't share too much.

I pitched Ogre3D a bit to a them, and of course they've heard of it. I gave them links to various middleware wrappers/interfaces like OgreSpeedTree, and suggested that they get in touch with Steve about doing an official plugin or something of the sort.

In hindsight I feel bad, because I didn't run it past Sinbad first... I just assumed he'd be interested in something like that- I know you're a busy man, so I apologize if that causes any grief! I don't actually know if they got in touch or not though...

Anyhow, I'd like to hear some opinions on Substance and some ideas for use cases. I won't bother writing out all the features of Substance, as it's all there on the site for your viewing pleasure. Simply put, it's like MaPZone with more features, running in your engine. Or rather, a more advanced version of ProFX. Sorta.

I actually played the first game I'd seen to use ProFX the other day, that being the MMO FPS Parabellum. Pretty interesting, as it's running on the Unreal 3 Engine tech, and has some other middleware too... can't remember what it was though. The craziest thing about Parabellum is that it's a F2P.

Posted: Tue Dec 23, 2008 12:37 pm
by sinbad
Don't worry about it, I'm always interested to hear from people about possible collaborations or just to say hi. Thanks for plugging Ogre ;)

Substance looks interesting, as a non-artist the potential for procedural content generation is of course very appealing :)

Posted: Wed Dec 24, 2008 12:45 am
by Wretched_Wyx
I just got confirmation that a beta will be coming along on January 15th- not sure if it's an open beta though...

I asked about the implications of using Substance in an open source project, and the feasibility of a wrapper for Ogre...

I was told that the Allegorithmic team made a wrapper for (I assume) another rendering engine within a couple days, so it shouldn't be that difficult. I can imagine that their code is very usable, and should hopefully be easy to work with. Just have to wait and see!

Re: Allegorithmic Substance

Posted: Tue Feb 10, 2009 9:06 am
by Wretched_Wyx
I know this topic is old, but just had to come in and update. I'm under NDA, so I can't share much... at least until I talk about what's okay to share and what's not. I can at least share within obvious boundaries (being that this information is already available at the Allegorithmic site) until then.

So far what I've seen, is that this beast does just what they said it would. So far I've only fiddled a bit with the editor, which could easily be called the bigger more experienced brother of MaPZone. The new features are quite nifty, most very useful as far as production goes. Heh, I find myself wanting to share more, but I think I'll stop there on that topic.

I've just started trying to mate Substance and Ogre together... but again, until I get a certain level of "okay to talk about" details, I can't divulge much. Though just like the site says again, you have a lot of options as far as creativity. Many inputs, outputs, etc are available, and properties are tweakable in real-time. I can already see just about every visually oriented Ogre plugin benefiting from something like Substance (terrain, atmosphere, bah, anything!). And the unbeatable magic of having tons of textures packaged in a few kilobytes, with tweakable properties is just... well... unbeatable.

Sadly though, I have to make an assumption that Substance won't be free, or cheap. With the level of AAA title producing companies buzzing about it, I find it a stretch to even hope for that. Though, they've been quite nice to me, speedy to reply, and open to ideas on indie licenses, non-commercial, etc. At least, it was brought up a bit... I know the person I was talking to is quite busy now and I don't want to bug her.

At any rate, I hope that within the week I'll have found out how much I can divulge (if I haven't already gotten myself in trouble, ha!), and I'll have some screenshots to share. Now back to wetting my pants over this...

Re: Allegorithmic Substance

Posted: Wed Feb 11, 2009 8:56 pm
by sinbad
Looking forward to hearing more. To be honest, if it lets you procedurally generate high-quality content that would have cost a lot of artist time to create, the price will be worth it.

Re: Allegorithmic Substance

Posted: Thu Feb 12, 2009 1:05 am
by Wretched_Wyx
I've been talking a bit with the COO at Allegorithmic, and he said he'd get back to me soon about being sharing a little more here. I hope he says it's cool, I really want to share more! And of course, I could use a little help...

Substance will definitely be making life easy on artists. Actually programmers, shader authors, texture artists, etc will all be happy with the features offered here. The Substance Mixer, which is a beefed up MaPZone, is really intuitive (especially for those comfortable with node based interfaces). The fact that you would initially create one "base" material, and have an infinite number of possible variations on that, is pretty sweet. You can access the inputs and outputs of the materials (in your source code), which when combined with shaders for example, allows you to do a whole hell of a lot. And of course when you modify parameters of one node, all the child nodes attached to that get updated automatically.

Here's an example:
You have a car model, using materials created with Substance. You've implemented a nifty GUI for tweaking parameters of your materials. The player can muck around with the materials, changing colors, specular values, normal map intensity, whatever you expose for tweaking. The player could even add decals and such, if you made your material in Substance Mixer properly. So the player could drag decals and place them on the car. And all this in real-time. Not only does this sort of thing cut down the amount of textures needed for a more... robust feel, but it also cuts down your file sizes, gives you more control, and opens up major possibilities for in-game customization for the end users.

And you're not limited to just the procedural stuff- you can also reference external resources. I'm not quite certain on this yet, but it seems you have a few options... you can render materials out to file at runtime (or install), keep them in memory and access them, or render/delete as you need/don't need them. This gives quite a bit of use, if you're clever. If you've used MaPZone, you know that it can create normal, specular, etc maps. If you're good with it, it can generate stuff that's on par with other dedicated apps like CrazyBump. Substance Mixer is just as good at this, if not better (I assume things have been upgraded), so this feature in itself proves useful. You could utilize it just for generating your various maps, referencing the base diffuse textures your artists create.

Another pitch here is, imagine you're level/world designers modifying the "look n' feel" of a scene. This might normally result in your texture artists having to go back and modify a whole slew of textures; not anymore. Especially if you make use of the input/outputs of Substance materials- all your materials would automatically update with the new "look n' feel" values.

So while Substance will definitely save artist time on a project, it doesn't end there. I see a high value here. I even think it's being used on the PSP, which is crazy...

Re: Allegorithmic Substance

Posted: Tue Dec 04, 2012 5:20 pm
by brettrjones2
Reviving an old post here.

Has anyone pursued integration of Allegorithmic Substance into Ogre3D? I have an evaluation copy of the Substance Air Framework and am about to embark on Substance integration for a research project.

I release Substance is a proprietary technology and therefore likely no-one has done this before / would like to share.

Re: Allegorithmic Substance

Posted: Wed Dec 05, 2012 1:29 pm
by Kojack
Substance integration in Ogre would be awesome (it's a really powerful tool, way more than the MapZone free version from years ago).
Both Unity and 3DSMax have Substance Engine built in (that's the runtime texture generator, the bit that would be integrated into Ogre).
But price is a bit of an obstacle. Substance Air (the package that contains the runtime engine) is $40000 per game per platform.
Substance Designer (the program to make these procedural textures) is $590.
Max or Unity people get the engine included free, but still need to buy the designer if they want to make their own substances (otherwise they can buy pre-made substances from the substance store).
While Allegorithmic have been working with a lot of people (Unity, Autodesk, Shiva, etc), I haven't seen any open source engines with substance support.

NeoTextureEdit is a pretty cool open source procedural texture editor (more active and better interface than FXGen), but it's entirely written in Java which makes integration with Ogre annoying.

Re: Allegorithmic Substance

Posted: Wed Dec 05, 2012 2:54 pm
by Mikachu
There's also a procedural texture generation system built into OgreProcedural.

It doesn't have an editor yet, though.. (currently working on it :) )

Re: Allegorithmic Substance

Posted: Thu Dec 06, 2012 1:39 am
by sparkprime
Call me cynical but surely procedural textures look awful?

Re: Allegorithmic Substance

Posted: Thu Dec 06, 2012 2:22 am
by Kojack
Badly made procedural textures look awful, but well made ones can look damn good.

Procedural textures (and in particular Substances) have some really useful properties:
- tiny file size (it stores the sequence of operations used to make the texture, not the texture itself)
- any resolution at runtime (you pick the res you want and it generates the texture)
- change parameters at runtime (the node graph used to build the texture can take inputs from your program to control the texture. Things like size of bricks in a brick wall, amount of dirt on an object, width of the white lines on a road, etc)
- tiling textures
- normal map is part of the output, so changing things like adding damage to bricks will also generate the normal maps to match.
- Substance also supports bitmap inputs, painting and vector art.

Re: Allegorithmic Substance

Posted: Thu Dec 06, 2012 10:25 am
Vector graphics in general can be seen as procedural textures, IMO. As you (almost) never store values for a pixel, but only relative positions and formulas.
Like NoesisGUI and Scaleform.