Home Coding, Scripting, Shaders

Tech Artist - What are you working on: FOREVER Edition!

1282931333456

Replies

  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    You can make a pretty good approximation of a maya group by creating a point helper at 0,0,0 with no transforms and linking your hierarchy to it.

    it'll be safe enough to animate it - if you need the pivot somewhere specific then you could position constrain it to another point helper (with relative on)
  • divi
    Options
    Offline / Send Message
    divi polycounter lvl 12
    Drew++ wrote: »
    Working on a lightweight app to pre-filter or blur cubemaps and save to the mipmaps. No UI, no anything yet except a renderer. Runs on the GPU. Takes only 1 or 2 seconds to calculate the blur. I've implemented like 10 specular BRDF's right now, and you can enter your target cube resolution, number of mips, or minimum mip res... So people can match it to their engine. Might add support so everyone can match their BRDF closely. Here it is showing the blurred result of a 256x256 cubemap, with 7 levels of roughness.

    m = roughness.

    so cool :D while the tweaked version of the ATI tool from sebastien lagarde is super neat, this seems like such a huge timesaver. can't wait :)
  • shaderfx
    Options
    Offline / Send Message
    shaderfx polycounter lvl 9
    Drew++ wrote: »
    Working on a lightweight app to pre-filter or blur cubemaps and save to the mipmaps.

    Excellent. Nice work, Drew.
  • jfeez
    Options
    Offline / Send Message
    jfeez polycounter lvl 8
    Wanted to try recreate the muscle bulge stuff from the last of us, proof of concept took alot less time than i thought =D Loads to do/improve on though

    n3w.gif
  • MikeF
    Options
    Offline / Send Message
    MikeF polycounter lvl 19
    jfeez, cool stuff!

    it looks like you've got the bulge joint controlled via expression based on distance between the locators on joint A and joint B?
  • DF 0024
    Options
    Offline / Send Message
    I make myself some tools to get really faster when doing rigs. It is work still in progress, when this leg is done everything else(arm, head & spine) will be create really fast and the tool wil be complete.

    [ame="http://www.youtube.com/watch?v=sCaDtKNKReY"]http://www.youtube.com/watch?v=sCaDtKNKReY[/ame]
  • animax
    Options
    Offline / Send Message
    animax polycounter lvl 15
    Great Xnormal tools guys.

    I am also trying to do a xnormal custom tool but stuck at the initial bit. Anyone knows, if there's maxscript access to the Xnormal SBM Exporter for max?

    I have gone so far as exporting the sbm through uiAccessor but not able to close the window through uiAccessor.

    Any help would be great.
  • Mambo4
    Options
    Offline / Send Message
    Mambo4 polycounter lvl 6
    poopipe wrote: »
    You can make a pretty good approximation of a maya group by creating a point helper at 0,0,0 with no transforms and linking your hierarchy to it.

    +1 to this approach. I use it all the time, esp for keeping rigs organized.
    Rather than use the link tool, I'd use mxs .parent to add selected objects

    mxs:
    myMayaLikeGroup = point cross:false name:"myMayaLikeGroup"[COLOR="DimGray"]--make a group[/COLOR]
    for each in $ do each.parent = myMayaLikeGroup [COLOR="DimGray"]--add selected objects[/COLOR]
    

    or better yet use PJanssen's excellent Maya-style Outliner for 3DS Max
  • prolow
    Options
    Offline / Send Message
    prolow polycounter lvl 11
    dipping my toes into the openGL pool using python/Maya
    [ame="http://www.youtube.com/watch?v=aPgBjNdCD50"]weight tweaker tool - YouTube[/ame]
  • Funky Bunnies
    Options
    Offline / Send Message
    Funky Bunnies polycounter lvl 17
    ahh thats a really neat way to visualize vert weights, prolow! :D
    weighting is such a horrible task with most default tools
  • alfalfasprossen
    [vv]75810969[/vv]

    been working on this script lately, we started it as a project for university over a year ago, but never came to really work on it. now we had to hand something in and while doing just enough for that, we came to the point where it actually started working the way we wanted it to.

    The script is written in python and we have a Max and Maya implementation, but my friend who programs the Max-part had no time the last few days, so there is only Maya in the video :)
  • prolow
    Options
    Offline / Send Message
    prolow polycounter lvl 11
    alfalfasprossen - WAAA! thats awesome, are you connecting some wincom to Ued from maya, or is it "copy transforms"/paste into Ued?
    Also how do you populate the scene's initially?
  • alfalfasprossen
    We are accessing the Windows UI of the Editor via a lot of different Windows functions, but the windows COM interface stuff didn't work with python and I only tried it for the modal dialogs, because they initially made problems otherwise, but yesterday I got it working with traditional functions. And yes, basically it is a copy, modify string, paste, thats why the objects disappear for a very short moment (the video is 2x speed, so you may not notice)

    currently both scenes have to exist with the matching names, but we will provide functionality to automatically get objects from UEd to the 3d-Program, i'll keep you posted :)
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    We are accessing the Windows UI of the Editor via a lot of different Windows functions, but the windows COM interface stuff didn't work with python and I only tried it for the modal dialogs, because they initially made problems otherwise, but yesterday I got it working with traditional functions. And yes, basically it is a copy, modify string, paste, thats why the objects disappear for a very short moment (the video is 2x speed, so you may not notice)

    currently both scenes have to exist with the matching names, but we will provide functionality to automatically get objects from UEd to the 3d-Program, i'll keep you posted :)

    @alfalfasprossen What problems were you having with com interface and python?
    I have used python with the comtypes modual with great success to control Photoshop from Maya using a com interface.

    Check out pslink in my signature.
  • alfalfasprossen
    I only tried to use it for the modal dialog that appears when you call export selected. The provided libraries for comtypes didn't have that dialog. I created the .tlb from the .idl file and tried to let comtypes wrap it in a .py file, but it had two assertion fails which i couldn't solve.
    I never used com interfaces before, and after a while i managed to answer the dialog with traditional methods. I don't know if the Editor itself is accessible via those interfaces or if it would provide any benefits...
    is your script already available? maybe i'll take a look ;)
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    ah nvm, ya for working with the com interface for PS it is really easy since PS has it's whole api exposed to the com interface, guess there is nothing of the sort in udk.

    psLink is still incomplete, im actually redoing most of the code on the maya side of it ti make it more efficient and reduce the amount of data i need to send to photoshop.

    curious for your tool, are you using unrealText for most of the information, or is it pretty much all done via windows UI commands
  • trebor777
    Options
    Offline / Send Message
    trebor777 polycounter lvl 10
    Hey everyone :) Back from a fairly long leave here :p sorry... >_>

    I've completely redone my Xnormal Batcher tool (that was made in maxscript before) into a standalone tool, C# + wpf ;) (learning new coding skills lol)
    It's pretty much done, need to test some actual baking with it lol :

    Features:
    - It's mostly a batcher, looking over specific folders to bake all they contains.
    - Can pick suffix & extensions of meshes
    - Check if everything is there to bake a map (checks for low/high/cage)
    - Independant Map Size for each mesh
    - Remembers "last session" global and per mesh settings
    - Notifies of baking crashes at the end
    - Exposes all Maps Parameters

    If you have any feedback/Questions on the UI, I'll be happy to improve/answer them :)

    Here are some screen Shots:
    XnormalBatcher00.PNG
    XnormalBatcher01.PNG
  • Kwramm
    Options
    Offline / Send Message
    Kwramm interpolator
    nice work. I think it's great to be able to access all options, but it looks a bit overwhelming. I wouldn't quite give this to our junior artists. They'd be overwhelmed and not know what to do, and in return use the tool wrong because they just don't know the settings. Or they might always call a TA for help

    Are you supplying any meaningful presets? That could help people getting started and then they could tweak parameters.

    You might also want to consider a simple and an advanced view for better usability.
  • Funky Bunnies
    Options
    Offline / Send Message
    Funky Bunnies polycounter lvl 17
    hooray!!!! looks amazing trebor :D

    looks way cooler than mine haha
    the big questions I have are if you can bake AO and VertexColor in the same 'bake' or something like that. Like when i tried to do it, I had it create another XML if you had vertexcolor on so you don't have to set all those goofy settings yourself. Not that that's necessarily the best way to do it :)

    could we also see what an expanded bake-options rollout looks like? It looks a bit intimidating having a huge ol list of those settings. I set mine up to pop in/out of the maptype checkbox so it wouldn't get too heavy/confusing

    I really like your overview window! I was hopiong to be able to do something like that but im not smart or fast enough haha. So how does it determine what the lows and highs match up to for each bake?
  • trebor777
    Options
    Offline / Send Message
    trebor777 polycounter lvl 10
    Hey thanks Chris :p Means a lot to me ^^!
    Yeah basically every thing that is checked in the global setting panel, will be baked all with the same process.

    Kwramm >
    The options rollout use the default xNormal settings. And in order to prevent cluttering the window into a massive Mess, I've made it react like Zbrush : only 1 panel is expanded at a time:
    xNormalBatcher.gif

    My idea was to have access to all parameters quickly, without needing an extra window (that'd need to close, 1 extra click times number of settings you want to change).
    Once you've changed them, they're saved for the next session :) so you don't have to reedit everything, same goes for each file.(so if you close(or crash) and reopen the soft, it'll just load up the xml generated)
    Settings are saved the instant you change one of them.

    And I added a reset settings button that put back all default settings.

    > bear in mind that: Map settings are the same for everyfile, except the map sizes that you can change independantly in the Files Tab.

    the batcher works over 4 main folders (inside the baking path, that are created automatically when the path is choosen): "LowPoly", "HighPoly", "Cage", "Maps".

    1st: it looks for the folder with most items that fits the suffixes & extensions set.
    2nd: clean up the filename (remove any suffix/extension)
    3rd: tries to match up the other 2 folders' content by reconstructing the correct filenames(from suffix/extensions), and ticks the checkboxes when it finds something that fits.

    if all 3 (or 2 if you don't use the cage) are checked, then you can bake that file.

    this is quite helpful to find what you forgot to put in your folders, and make sure everything is ready to bake :)
    with a bake all/selected, it'll automatically skip the "invalid" stuff.
    It will also tell you at the end which ones crashed during the bake process.
  • Neox
    Options
    Offline / Send Message
    Neox veteran polycounter
    trebor777 wrote: »
    Hey thanks Chris :p Means a lot to me ^^!
    Yeah basically every thing that is checked in the global setting panel, will be baked all with the same process.

    but that is impossible from within xnormal, ao and vcolors rule each other out, so if you tick on both, will it do 2 runs?
  • trebor777
    Options
    Offline / Send Message
    trebor777 polycounter lvl 10
    I didn't know it wasn't possible :p I guess I'll have to add a check for it and do a two pass job for it :)
  • Neox
    Options
    Offline / Send Message
    Neox veteran polycounter
    i GUESS ao uses the vertexcolors of the highpoly, and thats why xnormal has a ignore highpolys vertex color option. if you don't turn that on when baking AO you will get a b&w vertexpaint.
  • alfalfasprossen
    [vv]76288247[/vv]

    added a fetch-selected-objects feature that uses UDKs ExportSelected to FBX command and imports the resulting fbx into maya. There is something fancy about the axis orientation that UDK uses in that case, I will go into detail about this in another post in the next few days.

    I will issue a release soon, I first have to get our git repo ready for that ;)
    (Max users: you will have to wait a few weeks for a 3dsMax version, because my friend has to finish his master thesis first, he says :poly142:)
    passerby wrote:
    curious for your tool, are you using unrealText for most of the information, or is it pretty much all done via windows UI commands
  • Amanda Brooks
    Options
    Offline / Send Message
    Amanda Brooks polycounter lvl 6
    Hi - I'm not a tech artist, but I have a question about creating tools that hopefully one or more of you will be able to answer.

    The indie project that I'm helping with is using the HeroEngine and the included FaceGen mesh morphing software, and our team needs to streamline the mesh morphing set up and importing pipeline, detailed here - http://hewiki.heroengine.com/wiki/FaceGen_Pipeline

    The stand alone tool that we want to build would let us select multiple obj files, name them, and assign the various extreme mesh morph sliders to each one, and then generate the required lines of code - but we're not exactly sure how we should go about setting up and creating this tool - so do any of you tool makers have any advice or suggestions for us?
  • Funky Bunnies
    Options
    Offline / Send Message
    Funky Bunnies polycounter lvl 17
    trebor777 wrote: »
    I didn't know it wasn't possible :p I guess I'll have to add a check for it and do a two pass job for it :)

    ahh yeah there are some quirks to the way xnormal likes to bake stuff out :S. Thats why I ended up writing a second xml for any vertexcolor bakes, and also for any cases where you want to bake both an objectspace normal map and a tangentspace normal map (for example I talked to some people who said they baked an OS map and used handplane but would sometimes get artifacts, so would paint it down to the baked tangentspace map instead)


    Anyway, cool looking tool :)
  • haiddasalami
    Options
    Offline / Send Message
    haiddasalami polycounter lvl 14
    ahh yeah there are some quirks to the way xnormal likes to bake stuff out :S. Thats why I ended up writing a second xml for any vertexcolor bakes, and also for any cases where you want to bake both an objectspace normal map and a tangentspace normal map (for example I talked to some people who said they baked an OS map and used handplane but would sometimes get artifacts, so would paint it down to the baked tangentspace map instead)


    Anyway, cool looking tool :)

    General consensus make a second xml haha :) Yeah didnt know about this till an artist brought it up. Honestly never exported stuff to bake with vertex colors.
  • trebor777
    Options
    Offline / Send Message
    trebor777 polycounter lvl 10
    Well did some tests, and didn't had to change anything in my code:
    it bakes AO and Vertex Colors without an hitch with the same xml file.

    I'm using the last xNormal version, maybe it's been fixed.
    Also for each Object to bake I use a new bake process, so I can get the exit code for each object and know when i get an error ( rather than baking all the objects with 1 process)
  • Funky Bunnies
    Options
    Offline / Send Message
    Funky Bunnies polycounter lvl 17
    ah interesting, I'm on xnormal 3.18.3 and it still seems to render the AO and multiply that ontop of the vertexcolor in greyscale. Then render the vertexColor map correctly

    what do you mean about the exit process? Are you able to get feedback from xnormal? It seems to only silently exit upon errors with me, so for my tool I had to check to see if the desired maps were created within the time it's been baking in order to see if it errored :S
  • haiddasalami
    Options
    Offline / Send Message
    haiddasalami polycounter lvl 14
    ah interesting, I'm on xnormal 3.18.3 and it still seems to render the AO and multiply that ontop of the vertexcolor in greyscale. Then render the vertexColor map correctly

    what do you mean about the exit process? Are you able to get feedback from xnormal? It seems to only silently exit upon errors with me, so for my tool I had to check to see if the desired maps were created within the time it's been baking in order to see if it errored :S

    Hey Funky not sure what way trebor is using but you can get the exit code to see if user aborted the process or not. Also there is a debugLog in the xNormal folder in Documents that you could parse through and get certain errors that reside in the mesh. Also noticing the same thing Funky is talking about. Will try updating Xnormal and see if it was changed
  • trebor777
    Options
    Offline / Send Message
    trebor777 polycounter lvl 10
    hum wait ;p I'll check again on that then ^^ the Vcolors in my highpoly are actually a kind of gray, so that's probably why I didn't see a difference... ahaha :p

    EDIT:
    Ah, yeah :p got my vcolors out, but the AO was full black... :/ Guess I've to do a v1.02
  • Nysuatro
    Options
    Offline / Send Message
    For me this is still technical art related as I am constantly busy with problem solving.
    I hope it is useful for somebody.

    http://nysuatro.blogspot.ca/2013/10/project-triangle-vision-personal.html
  • jRocket
    Options
    Offline / Send Message
    jRocket polycounter lvl 18
    Hey all, I'm making an eye shader for Unity, with a parallax effects for the iris and cornia, and interactive pupil dilation.

    [ame="http://www.youtube.com/watch?v=4Xwn5Jp8aCY"]Real Eyes Unity Eye Shader - YouTube[/ame]
  • indavisual
    Options
    Offline / Send Message
    indavisual polycounter lvl 17
    [ame]www.youtube.com/watch?v=js_RuvtWLPw[/ame]
  • ofca
    Options
    Offline / Send Message
    ofca polycounter lvl 9
    indavisual wrote: »

    Whoa, nice! Really nice. I like that faked wave breaking. It's convincing. Maybe i will add more alpha blending at the ground.

    Any break down? Maybe udk package?

    Anyway, cool!
  • Neil1987
    Options
    Offline / Send Message
    Finally getting back to working on this model.

    8xbs.jpg
  • Mossbros
    Options
    Offline / Send Message
    Mossbros polycounter lvl 9
    jRocket wrote: »
    Hey all, I'm making an eye shader for Unity, with a parallax effects for the iris and cornia, and interactive pupil dilation.

    Real Eyes Unity Eye Shader - YouTube

    "I have special eyes... MY BRAND!"
  • radiancef0rge
    Options
    Offline / Send Message
    radiancef0rge ngon master
    Ive been working on some Photoshop Scripts using Javascript over the past couple weeks I thought I would post some of them here for download.
    OffsetTile.gif
    This is a quick offset that detects texture res and offsets by half
    SimpleOpen.gif
    This script is an alternate way of opening .psds based on an art directory. It automatically populates names based on the files in each folder. You can change the path in this line if you like
    folders.push(Folder("/D/art/textures/Asphalt"));
    

    Heres a perforce checkin/out/add for photoshop. I can't take credit for the whole thing, the batch file construct is based on an older script by Vlad Dumitrascu, but I modified it for CS6 as well as added a few cosmetic additions and some cleanup commands

    p4new.gif

    Only problem I ran into was that your computer name and workspace client name have to be the same. :(

    clicks!

    There are a few others but theyre not that interesting yet
  • Stromberg90
    Options
    Offline / Send Message
    Stromberg90 polycounter lvl 11
    radiancef0rge: Thanks, just the offset action is enough to download this :)
  • lluc
    Options
    Offline / Send Message
    lluc polycounter lvl 14
  • DaveHansan
    Options
    Offline / Send Message
    DaveHansan polycounter lvl 7
    Hey guys, great work on here. I'm currently trying to an 80's style post process filter for a demo I'm working on in UDK. Something like what's constantly on in FarCry Blood Dragon shown here

    http://www.youtube.com/watch?v=VOvBP8cc2F4&feature=player_detailpage#t=292

    I really like the imperfections of the filter and almost "glitching" in this example from Max Payne 3.

    http://www.youtube.com/watch?v=ZeaWBINtmVU&feature=player_detailpage#t=993

    or if any way to convert this after effects template might be a good start

    http://www.youtube.com/watch?v=TT-_ZfWIdZY

    Any help with pointing me in the right direction of getting this filter or material going would be really appreciated!
  • mrjojo
    Options
    Offline / Send Message
    mrjojo polycounter lvl 7
    ive been having a vision of some abandoned place so i thought i should give it a shot.currently working on textures...

    jEdT8vJ.jpg
  • Kurt Russell Fan Club
    Options
    Offline / Send Message
    Kurt Russell Fan Club polycounter lvl 9
    I've been slowly working on an engine over the past two months and I'm starting to like where it's headed. I'm using C++ and DirectX, with Bullet for physics :)

    Here's a screencap:
    gregAvm.jpg

    And here's a little animation of the sunrise
  • osman
    Options
    Offline / Send Message
    osman polycounter lvl 18
    Impressive :), do you have more to show of your engine?
  • C86G
    Options
    Offline / Send Message
    C86G greentooth
    I did not want to create a new thread for one single question, so I thought I could ask here:

    How come my Max previews ambient occlusion only in orthographic view, not in perspective?
  • Deadly Nightshade
    Options
    Offline / Send Message
    Deadly Nightshade polycounter lvl 10
    I'm currently looking into communication between Autodesk Maya and Adobe Photoshop, learning some Photoshop scripting and discovering all the amazing things you can do with such a pipeline. It's fun, interesting and very educational. Me like! I have an idea for a Maya<-->Photoshop tool in mind but haven't really started developing yet.
    I've been slowly working on an engine over the past two months and I'm starting to like where it's headed. I'm using C++ and DirectX, with Bullet for physics :)

    LOL - OMG Mike.
    That is some real hardcore stuff you got there ^^ I'm impressed!
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    Have you looked into using comtypes in the python engine of maya, i have done this to setup a com link between maya and Photoshop, which allows me to get full access of photoshops scripting api from python in maya.

    If you look at my sig at the psLink video, that is how im sending the data and calling photoshop methods from maya.

    after you got comtypes installed, it's as simple as importing the modual, and instaitinating the psApp object, than calling methods on that object.
    import comtypes.client
    psApp = comtypes.client.CreateObject('Photoshop.Application')
    

    that bit of code will run photoshop if not already running, and give you full access to the javaScript api as python objects.
    I'm currently looking into communication between Autodesk Maya and Adobe Photoshop, learning some Photoshop scripting and discovering all the amazing things you can do with such a pipeline. It's fun, interesting and very educational. Me like! I have an idea for a Maya<-->Photoshop tool in mind but haven't really started developing yet.
  • Kurt Russell Fan Club
    Options
    Offline / Send Message
    Kurt Russell Fan Club polycounter lvl 9
    Thanks guys :)

    Nah, not really anything else to show. It's basically just a big terrain engine with streaming so it supports 8km terrains. I've got physics in but so far there's just a cube you can drop and it'll act all physics-y along the terrain. Here's a few more screens, though
  • Deadly Nightshade
    Options
    Offline / Send Message
    Deadly Nightshade polycounter lvl 10
    passerby wrote: »
    Have you looked into using comtypes in the python engine of maya, i have done this to setup a com link between maya and Photoshop, which allows me to get full access of photoshops scripting api from python in maya.

    If you look at my sig at the psLink video, that is how im sending the data and calling photoshop methods from maya.

    after you got comtypes installed, it's as simple as importing the modual, and instaitinating the psApp object, than calling methods on that object.
    import comtypes.client
    psApp = comtypes.client.CreateObject('Photoshop.Application')
    

    that bit of code will run photoshop if not already running, and give you full access to the javaScript api as python objects.

    You can achieve the same results without the comtypes module if you do it like Pete Hanshaw: http://peterhanshawart.blogspot.se/2013/10/python-photoshop-automation-without_29.html

    The script (he use VBscript) with the commands is written on the fly in Python before being executed in Photoshop. Pretty cool, but I want more than this: I want a want full bidirectional communication.

    It can be done:
    http://tech-artists.org/forum/showthread.php?4481-Communicating-between-Photoshop-and-Maya-(Python)

    ...but requires CS5.5+ and/or way too many headaches.
    So atm I'm stuck. TheMaxx stuff probably works, but requires Photoshop CS5.5+ and several python libraries - which I have failed to get to work on my machine due to lack of installation instructions.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    most python libraries install pretty easy if you got pip installed in python, and easy_install. For the most part with how python libs are packaged it is simply just running
    pip install <pacakgename>
    in console, or downloading the package and uses easy_install
1282931333456
Sign In or Register to comment.