@arrangemonk
The real point of this experiment is the connection between unity and whatever external GUI you want, so I might as well have used WPF.
Out of curiosity: is there a reason why one would always want to switch to WPF? I've used it before, but not for very long.
Is it possible that Turbotools is somehow able to screw up your whole Windows? I installed it, closed Max and wanted to reopen it. However I got a license error 41.
Our admin made some more investigation and found out that the whole Windows is screwed up. Like the search functions does not work properly anymore and many important System folders are just not there anymore (!) etc.
Maybe something made its way into mzp somehow? Broken *dlls or so?
But probably it is just a very very bad conincident...
I don't use any kind of licenses or anything for my toolbar. I've never seen that before either.
I've tested installing/un-installing the toolbar on my laptop, outside of my normal machine, and all was fine. This was on Windows 7 32bit. I can double check again, but the only folder that is set to remove anything is specifically set to the max Scripts directory.
I have win7 64bit. One thing that might be unusual on our machines is that we have 4 installations of Max. 2010 32bit,64bit and 2011 32bit,64bit. Dont ask why . COuld that lead to a problem?
But anyway somehow I doubt it that a maxscript screws up my whole Windows. It is just the last thing I did on my machine. Very bad luck I guess
Thx for checking though.
I'm making a plugin so you can use a graphics tablet as input in 3d Max. Here's a demo of what I've made so far, just to to see if anyone's interested and what people think.
Here I'm experimenting with replacing a 3dsMax viewport with an UDK viewport in order to be able to check the changes in realtime between 3dsmax and UDK.
Thanks to the MaxScript sub-forum at CGTalk, there are a ton of useful bits of code that I have learnt from!
^ Yeah. Thats what I always hear. But don't you need to know Mel somewhat to use Python?
Mel helps somewhat but usually the python documentation is well documented and the mel knowledge helps when converting maya commands to pythonic terms.
clusters are not yet rotated 90 degree step wise, otherwise I think I can get even more efficiency out of it. Mesh clusters will be generated as well hence why I can pack the sprites like this and not using bounding volumes like most other solutions.
renderhjs - you've got the kings' crowns overlapping other sprites a few time, that can't be good. Some other overlaps too, but the crowns are very obvious.
What kind of processing overhead does it give to cut out all sprites for use again?
What kind of processing overhead does it give to cut out all sprites for use again?
How would one approach this? Could you do it with basic nodes in UDK, no custom code?
On a slightly related note, I have been looking into learning to code in Cg, now that eat3d has a DVD.
I was reading some tech papers on engines that use deffered shading and I noticed that they are very limited in the type of shader you can use, usually a very limited phong. I think Cryengine 3 mostly uses a variation of the illum shader for most assets because of this. Either way, they don't have a node based editor like UDK, but instead use their uber-shaders. I didn't see any option to make your own shaders.
What if you need extra functions? Is it possible to extend the functionality with one of these shading languages? As we move into the deffered future, would this kind of a job be done by a tech artist, or would they designate this job to engine coders? (Which I definitely am not)
there is more or less two popular ways to go about "deferred" rendering
* classic deferred shading: e.g. collect all attributes for full shading in g-buffers (albedo, normal...): means fat framebuffers and rather limited ways to go about material diversity, as you must have all attributes in said g-buffers.
* light pre-pass: this becomes increasingly popular, and is afaik used by crytek, dice and a bunch of others (at least in variations). You render a g-buffer only with attributes you need for collecting light information. I.e. you get a sort of a light-map in screenspace. Then you render the scene with "material shaders", in those you can fetch more additional attributes (textures) and do more diversity in how you process that screenspace lightmap.
From what I have read, Deffered Lighting (Or lighting-prepass as we have been calling it before) has some downsides, especially if you are doing multiplatform games because of the double geometry pass with PS3.
Cryengine uses a mix of techniques, but it renders out all the Gbuffers as in Deffered shading and your stuck with a basic phong. BF3 uses deffered shading. DX11 UDK does aswell. it is very limited too:
Restrictions
Material is opaque, uses the Phong lighting model, does not use subsurface scattering
The mesh uses one of the supported lighting channels (Dynamic, Cinematic 1-3)
The light is a movable point, spot or directional light using one of the supported lighting channels (Dynamic, Cinematic 1-3)
Additionally, material properties are restricted when lit with deferred shading:
Material diffuse values are clamped between 0 and 1
Material specular values are clamped between 0 and 1
Material specular power is clamped between 0 and 500
I would imagine Cryengine, Frostbite and UDK, are only going to get more poular as time goes on, so are tech artists that work with these deferred shading engines going to get less access to writing custom shaders?
You can mix deferred and forward rendering. It would be pretty silly for an engine not to do both or you wouldnt be able to have any blended surfaces, or custom lighting.
You can mix deferred and forward rendering. It would be pretty silly for an engine not to do both or you wouldnt be able to have any blended surfaces, or custom lighting.
I got the Edge Issues fixed now. It doesn't operate in Realtime, but is slightly delayed now, but it gives much better performance, and also doesn't go all crazy.
Great! Would it be possible to wrap a spline around a cylinder with this + an offset value?
Could be a big help with floating geo on non-planar shapes.
Yeah, Spline could prob work the same way. I was thinking about adding an offset slider.
I'm going to work on it more today. Ill look into splines.
The main issues I've had are/were just saying how to go about projecting verts. Right now I have it setup to only simulate on the start of the tool, then it only keeps working while the Modify Panel is open, or it works on whatever your sub-object you have selected.
So if you select an edge loop, every second or maybe .5 I can change it to, it tries to find the best spot to move to. So you can drop in an Edge Loop now, and after u do so, if u wait that little bit, it snaps them all to the surface.
I tested on a turboSmoothed mesh being projected onto, and its fine. At first it was sluggish, but since I changed how it works, its fine now. Of course, the more verts you try to project down at a time, the more processing time its going to take.
I may allow for turboSmooth modifiers to be applied to the mesh being projected with, but other modifiers might cause issues/kill it. I need to test more.
Thanks. Yeah, it should work on Max 9. Im testing on 2012 right now. But I would assume/pretty sure it will have the same performance overall across all.
- Caches Target Geo more efficiently
- MUCH better results and faster than before when wrapping Geometry
- Use custom Direction or Best Guess for Projection/Wrapping
- Use Modifiers ontop of your Editable Poly Mesh
- Use Soft Selection with Geo
- Use Offset with Geo
- Use Manual or Realtime Mode + Pause/Resume
- ShrinkWap Splines now using the same settings (besides Offset/Soft Selection)
If there appears to be lag, its from the capture mainly. The geo/splines update however every .5 seconds as u adjust things for performance sake.
that looks great , i've done something simular a few years back but this already looks 10x more usefull since you can just keep working on your model while having it in wrapmode
Thanks Yeah, that was my main focus. To try and let you work as normal, but be wrapping properly. Right now it wraps on start, but then after that unless you have a SubObject element selected, it doesnt simulate/waste CPU.
So as soon as you select a vert/edge/face/border/element, it converts the selection and begins working.
I found a couple issues, so got some more things sorted.
Also added new features:
- Spline Offset now works.
- Update speed: Change how often the tool updates (every 350ms to 5 seconds)
- Splines now update on all Seperate Spline "Elements"
- Just got spline "elements" working. I didn't think about that one. Tried to project a Text Spline and only the 1st letter worked. Now it all works fine, and you can add/remove spline "elements" in realtime and all is good.
Decided to Add Group/Multiple Object Support for the Target Mesh.
So now instead of only using 1 Mesh, you can use the current selection (Groups, Meshes) and it creates a Target Mesh from that.
Although, by doing this, there is a chance the tool could error if you change selections while in Preview Mode, and select one of those original meshes you used to create the Target.
But I do allow you to switch selections while in preview mode so you can wrap other geo/splines without exiting the mode.
Replies
Early stages of a ProcBuilding thingie for Unity:
[ame="http://www.youtube.com/watch?v=SBXa-8HeZ1Y"]Unity ProcBuilding - early days - YouTube[/ame]
Dont use winforms
its so inconvenient to convert them to wpf
The real point of this experiment is the connection between unity and whatever external GUI you want, so I might as well have used WPF.
Out of curiosity: is there a reason why one would always want to switch to WPF? I've used it before, but not for very long.
Its written in C#/WPF and has theme support and a plugin system.
Is it possible that Turbotools is somehow able to screw up your whole Windows? I installed it, closed Max and wanted to reopen it. However I got a license error 41.
Our admin made some more investigation and found out that the whole Windows is screwed up. Like the search functions does not work properly anymore and many important System folders are just not there anymore (!) etc.
Maybe something made its way into mzp somehow? Broken *dlls or so?
But probably it is just a very very bad conincident...
Anyway, could you please check that?
Thx
I don't use any kind of licenses or anything for my toolbar. I've never seen that before either.
I've tested installing/un-installing the toolbar on my laptop, outside of my normal machine, and all was fine. This was on Windows 7 32bit. I can double check again, but the only folder that is set to remove anything is specifically set to the max Scripts directory.
A quick search, I found this.
http://forums.autodesk.com/t5/Installation-Licensing/License-Error-41/td-p/2828705
Edit: Yeah, I tested again on my laptop, downloading the MZP from my site, did un-install/reinstall and works just fine.
I can try on another machine tomorrow, but I really do think its something else.
But anyway somehow I doubt it that a maxscript screws up my whole Windows. It is just the last thing I did on my machine. Very bad luck I guess
Thx for checking though.
..sounds like a virus you picked up somewhere?
http://matthewlichy.com/bitmapPlacer/bitmapPlacer.html
http://vimeo.com/34397857
What? WHAT!? You shit out some of the coolest most impressivest shit in this thread, and you're unemployed? ...did you even ask for a job anywhere?
WHY CANT THIS BE FOR MAYA!?!??!?! :( lol
Cause I'm not a Maya user, that's why :poly124:
(For example : http://download.autodesk.com/us/maya/2011help/Commands/ or http://xyz2.net/mel/ )
But for a thing such advanced as making an UDK viewport in maya it's gonna be a bit hard I think.
Python!
Mel helps somewhat but usually the python documentation is well documented and the mel knowledge helps when converting maya commands to pythonic terms.
clusters are not yet rotated 90 degree step wise, otherwise I think I can get even more efficiency out of it. Mesh clusters will be generated as well hence why I can pack the sprites like this and not using bounding volumes like most other solutions.
How do you control the point of origin for each sprite btw? If you're willing to share ofcourse.
What kind of processing overhead does it give to cut out all sprites for use again?
How would one approach this? Could you do it with basic nodes in UDK, no custom code?
On a slightly related note, I have been looking into learning to code in Cg, now that eat3d has a DVD.
I was reading some tech papers on engines that use deffered shading and I noticed that they are very limited in the type of shader you can use, usually a very limited phong. I think Cryengine 3 mostly uses a variation of the illum shader for most assets because of this. Either way, they don't have a node based editor like UDK, but instead use their uber-shaders. I didn't see any option to make your own shaders.
What if you need extra functions? Is it possible to extend the functionality with one of these shading languages? As we move into the deffered future, would this kind of a job be done by a tech artist, or would they designate this job to engine coders? (Which I definitely am not)
* classic deferred shading: e.g. collect all attributes for full shading in g-buffers (albedo, normal...): means fat framebuffers and rather limited ways to go about material diversity, as you must have all attributes in said g-buffers.
* light pre-pass: this becomes increasingly popular, and is afaik used by crytek, dice and a bunch of others (at least in variations). You render a g-buffer only with attributes you need for collecting light information. I.e. you get a sort of a light-map in screenspace. Then you render the scene with "material shaders", in those you can fetch more additional attributes (textures) and do more diversity in how you process that screenspace lightmap.
Cryengine uses a mix of techniques, but it renders out all the Gbuffers as in Deffered shading and your stuck with a basic phong. BF3 uses deffered shading. DX11 UDK does aswell. it is very limited too:
I would imagine Cryengine, Frostbite and UDK, are only going to get more poular as time goes on, so are tech artists that work with these deferred shading engines going to get less access to writing custom shaders?
Or have no transparency...
http://www.matthewlichy.com/wrapTest/wrapTest.html
Maybe I will keep working on this now
Could be a big help with floating geo on non-planar shapes.
I'm going to work on it more today. Ill look into splines.
The main issues I've had are/were just saying how to go about projecting verts. Right now I have it setup to only simulate on the start of the tool, then it only keeps working while the Modify Panel is open, or it works on whatever your sub-object you have selected.
So if you select an edge loop, every second or maybe .5 I can change it to, it tries to find the best spot to move to. So you can drop in an Edge Loop now, and after u do so, if u wait that little bit, it snaps them all to the surface.
More to come...
I may allow for turboSmooth modifiers to be applied to the mesh being projected with, but other modifiers might cause issues/kill it. I need to test more.
Cheers~
P.S. Or if you need / want some Max 9 testing let me know.
new features/fixes:
- Caches Target Geo more efficiently
- MUCH better results and faster than before when wrapping Geometry
- Use custom Direction or Best Guess for Projection/Wrapping
- Use Modifiers ontop of your Editable Poly Mesh
- Use Soft Selection with Geo
- Use Offset with Geo
- Use Manual or Realtime Mode + Pause/Resume
- ShrinkWap Splines now using the same settings (besides Offset/Soft Selection)
If there appears to be lag, its from the capture mainly. The geo/splines update however every .5 seconds as u adjust things for performance sake.
http://www.matthewlichy.com/wrapTest2/wrapTest2.html
So as soon as you select a vert/edge/face/border/element, it converts the selection and begins working.
yeah, i don't know what that means either.
Also added new features:
- Spline Offset now works.
- Update speed: Change how often the tool updates (every 350ms to 5 seconds)
- Splines now update on all Seperate Spline "Elements"
- Just got spline "elements" working. I didn't think about that one. Tried to project a Text Spline and only the 1st letter worked. Now it all works fine, and you can add/remove spline "elements" in realtime and all is good.
So now instead of only using 1 Mesh, you can use the current selection (Groups, Meshes) and it creates a Target Mesh from that.
Although, by doing this, there is a chance the tool could error if you change selections while in Preview Mode, and select one of those original meshes you used to create the Target.
But I do allow you to switch selections while in preview mode so you can wrap other geo/splines without exiting the mode.
http://www.matthewlichy.com/wrapTest3/wrapTest3.html