Giter Site home page Giter Site logo

vfxtoolbox's Introduction

VFXToolbox

Additional tools for Visual Effect Artists.

Install VFX Toolbox Unity Package

Local Package Install :

  • Git Clone this repository (or download zip and unzip locally)
  • Install Unity 2019.3 or newer and run it for your project
  • Open Package Manager Window (Window/Package Manager)
  • Use the + Button located at the top-left of the window and select "Add Package from Disk"
  • Navigate to the root of the repository directory then open the package.json file.

Git Reference Install (Package will be available as read-only):

  • (Make sure you have Git CLI installed on your system and path correctly configured)
  • Install Unity 2019.3 or newer
  • Open your project's Packages/manifest.json file with a text editor
  • Add the following line to dependencies list : "com.unity.vfx-toolbox": "https://github.com/Unity-Technologies/VFXToolbox.git#2.0.0-preview",

Image Sequencer

This utility enables the authoring of Flipbook Texture Sheets in an easy way. Create Image Sequence assets, import your texture sequences and start retiming, loop, and assemble into a flipbook texture sheet.

By using templates, you can go back, make adjustments then re-export with only one click.

  • You can create Image Sequence Templates using the Create/Visual Effects/Image Sequence project window menu
  • You can open the Image Sequencer using the Window/Visual Effects/Image Sequencer menu

DCC Tools

DCC Tools enable the export of .pcache and .vf files to be used with Visual Effect Graph. They are available for the following DCCs at the moment:

Houdini

  • Point Cache
  • Volume Exporter

vfxtoolbox's People

Contributors

gabrieldelacruz avatar jmargevics avatar mikerochip avatar orsonfavrel avatar peeweek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vfxtoolbox's Issues

Generating distance gradient

Hi, I'm trying to generate a distance gradient from a geometry but all I have in reference is a graph that uses one to maintain particles along a surface from Keijiro and I can't seem to duplicate his results.

My distance gradient does not behave as expected, but I also have no other reference or way to compare?

Could somebody point me in the right direction? Is there a possibility of generating an example Houdini file?

This is what I have so far:

image

[Houdini] OTL install errors

As soon as you import the OTLs in the Houdini folder, you get this error in Houdini:

Exception in thread Thread-5:
Traceback (most recent call last):
  File "C:\PROGRA~1\SIDEEF~1\HOUDIN~1.590\python310\lib\threading.py", line 1016, in _bootstrap_inner
    self.run()
  File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.590/houdini/python3.10libs\houdinihelp\api.py", line 696, in run
    pathlist = [nodetype_to_path(defn.nodeType())
  File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.590/houdini/python3.10libs\houdinihelp\api.py", line 696, in <listcomp>
    pathlist = [nodetype_to_path(defn.nodeType())
  File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.590/houdini/python3.10libs\houdinihelp\api.py", line 1092, in nodetype_to_path
    return components_to_path(table, scopeop, namespace, corename, version,
  File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.590/houdini/python3.10libs\houdinihelp\api.py", line 993, in components_to_path
    parts = ["/nodes/", table_to_dir[table], "/"]
KeyError: 'Cop'

Is this repo abandoned? This really needs more attention, as it's really a must-have for professional game/vfx developers working with Unity for high fidelity graphics and fx ... and it honestly needs to be promoted/expanded! Is there no one free at Unity to work on it, or did it get deprioritized/kicked to the curb?

Houdini examples are not working with the HDA unity plugin on missing nodes

Load warnings for E:/VFXToolbox/DCC-Tools/Houdini/Examples/VectorFields/vectorFields.hipnc

Warning: "/obj/VectorFields/volumetile9" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile8" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile7" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile6" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile5" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile4" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile3" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile2" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volume_previs1" using incomplete asset definition (full definition not found).
"/obj/VectorFields/volumetile1" using incomplete asset definition (full definition not found).
The following node types are using incomplete asset definitions:
Sop/volumetile
Sop/volume_previs

any updates on these errors?
Thanks in advance

Volume Previs HDA Broken on Install

Typo in the volume points python code.

x /= reduce
y /= reduce
z /= reduce

bounds = geo.boundingBox()
bmin = bounds.minvec()
bmax = bounds.maxvec()
bstep = hou.Vector3((bmax[0] - bmin[0]) / x, (bmax[1] - bmin[1]) / y, (bmax[2] - bmin[2]) / z) 

geo.clear()

for i in xrange(x):  #<<<======
    for j in range(y):
        for k in range(z):
            p = geo.createPoint()
            p.setPosition((bmin[0] + (i*bstep[0]),bmin[1] + (j*bstep[1]),bmin[2] + (k*bstep[2])))

Fixing produced a float to int casting error.

Didn't take long to fix, I'm going to create a PR for this. Here's the updated version of the volumepoints.py

    if isinstance(geo, hou.Geometry):
        for prim in geo.prims():
            if isinstance(prim, hou.Volume):
                if prim.stringAttribValue('name') == name :
                    return prim;
            
        raise hou.Error("Cannot find Volume with name of : %s" % name )        
        return None
    raise hou.Error("Error: geo parameter is not of Geometry type")
    return None
    
# This code is called when instances of this SOP cook.
node = hou.pwd()
geo = node.geometry()

volumename = node.parm("parm_volumename").evalAsString()
volume = FindNamedVolume(geo,volumename)
reduce = node.parm("parm_reduce").evalAsInt()

x = volume.resolution()[0]
y = volume.resolution()[1]
z = volume.resolution()[2]

x = x // reduce
y = y // reduce
z = z // reduce

bounds = geo.boundingBox()
bmin = bounds.minvec()
bmax = bounds.maxvec()
bstep = hou.Vector3((bmax[0] - bmin[0]) / x, (bmax[1] - bmin[1]) / y, (bmax[2] - bmin[2]) / z) 

geo.clear()

for i in range(x):
    for j in range(y):
        for k in range(z):
            p = geo.createPoint()
            p.setPosition((bmin[0] + (i*bstep[0]),bmin[1] + (j*bstep[1]),bmin[2] + (k*bstep[2])))

TOPs

Is there a way to make these two nodes work with TOPs? Currently they don't seem to evaluate for each workitem

Remap curve only show bottom half

image
Hello, the time remap curve don't show all the curve so i can't really use it.
Happens on both unity 2019.4.13f1 and 2020.1.11f1
VFXtoolbox is latest, as i just clone the repo and reinstall.
I tried with maximize tab option, but still nothing changed.

Houdini 18.5 pcache python error

There is an error when trying to export a set of points using pcache node in Houdini 18.

Python error: Traceback (most recent call last):
File "<stdin>", line 30, in <module>
File "Sop/pcache, PythonModule", line 303, in saveAsFile
TypeError: 'newline' is an invalid keyword argument for this function

I can try updating the code but it seems the hda plugin code is not open source.

Bug reproduction steps: https://www.youtube.com/watch?v=z1Am4DIDEzw

Houdini tools not showing up in Apprentice panel

Hi, i tried to import the houdini tools in my 17.0.416 Apprentice version (running on a mac 10.13.6) and they don't show up in the tools panel. Do you have any guess about what could cause this issue ?
Thanks

Error : python error

Error
Python error: File "", line 21
print string
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(string)?

i installed it and this comes up when i click on the volume export

when i load the example file vectorFields it says

Error
Python error: Could not find PythonCook section

Help please

How to use the Blender 6-way lighting script?

I have a blender fluid simulation explosion. I have imported the unity_6way.py script and have this menu
image

Im following this blog post:
https://blog.unity.com/engine-platform/realistic-smoke-with-6-way-lighting-in-vfx-graph

image

At this point in the blog post theres a severe lack of information on what you are meant to do. I've setup my settings to be the same as in the blog and now hit Render all.

After rendering I have an EXR file called Lightmaps_00x.exr, for every frame of the animation. If i now go to the compositing tab and hit render I get this error:
image

If I try to Export Flipbook I get this error:
image

So what exactly am I meant to do with this EXR file? When I drop it into Unity, Unity is unable to read it. Hoping that the script built by Unity for 6-way lighting VFX export from blender actually works and I wont need to be fixing it myself.. Cant find any tutorials on this.

Houdini Point Cache SOP IO Error

Hi
It seems as though there is a hardcoded path in the Point Cache SOP FileName option
Get an error
No such file or directory **C:/Users/Utilisateur/**PigHead.pcache"

Error after imported package

  1. VFXToolbox\Editor\ImageSequencer\ImageSequencer.Export.cs(193,82): error CS0117: 'TextureImporterShape' does not contain a definition for 'Texture2DArray'
  2. VFXToolbox\Editor\ImageSequencer\ImageSequencer.Export.cs(194,46): error CS1061: 'TextureImporterSettings' does not contain a definition for 'flipbookColumns' and no accessible extension method 'flipbookColumns' accepting a first argument of type 'TextureImporterSettings' could be found (are you missing a using directive or an assembly reference?)
  3. VFXToolbox\Editor\ImageSequencer\ImageSequencer.Export.cs(195,46): error CS1061: 'TextureImporterSettings' does not contain a definition for 'flipbookRows' and no accessible extension method 'flipbookRows' accepting a first argument of type 'TextureImporterSettings' could be found (are you missing a using directive or an assembly reference?)

Public.meta file causing warnings

Please remove: VFXToolbox/ImageSequencer/Editor/Public.meta

Unity is unable to automatically remove files that are installed as a package.

Since the folder is missing, Public.meta is causing warnings when the VFXToolbox is installed as a package.

Point Cache Animation

I have a point cloud that follows my alembic animation. I was trying to export the point cloud with animation but it looks like it only exports out the first frame or the current frame the timeline is on. Does the Houdini pCache exporter have support for animation?

Error while package import

When I import the "VFXToolbox" via Package Manager I recieve 1 warning and 3 errors. (and the import itself fails, as far as I understand)
Errors are:

**\VFXToolbox-master\Editor\ImageSequencer\ImageSequenceAssetEditor.cs(12,22): warning CS0414: The field 'ImageSequenceAssetEditor.m_PreviewOutput' is assigned but its value is never used

\VFXToolbox-master\Editor\ImageSequencer\ImageSequencer.Export.cs(195,46): error CS1061: 'TextureImporterSettings' does not contain a definition for 'flipbookRows' and no accessible extension method 'flipbookRows' accepting a first argument of type 'TextureImporterSettings' could be found (are you missing a using directive or an assembly reference?)

\VFXToolbox-master\Editor\ImageSequencer\ImageSequencer.Export.cs(194,46): error CS1061: 'TextureImporterSettings' does not contain a definition for 'flipbookColumns' and no accessible extension method 'flipbookColumns' accepting a first argument of type 'TextureImporterSettings' could be found (are you missing a using directive or an assembly reference?)

\VFXToolbox-master\Editor\ImageSequencer\ImageSequencer.Export.cs(193,82): error CS0117: 'TextureImporterShape' does not contain a definition for 'Texture2DArray'**

Installation via package manager

Ideally the workflow for installing should be the same as https://github.com/peeweek/net.peeweek.vfxgraph-extras

i.e.:

append the line "com.unity.vfx-toolbox": "https://github.com/Unity-Technologies/VFXToolbox.git", under dependencies

(or something similar)

Ideally Package Manager should fix this by supporting subdirectories in git urls but until then every single repo has to do the leg work (have a word with the Package Manager team, would you!)

So - would it be possible to change the directory structure of this repo, or create a UPM branch like Keijiro does with his stuff?

Image Sequencer won't open in Unity 2019.3.10

When you try to make a new image sequence in Unity 2019.3.10 you get the following error relating to a null shader:

ArgumentNullException: Value cannot be null.
Parameter name: shader
UnityEngine.Material..ctor (UnityEngine.Shader shader) (at /Users/builduser/buildslave/unity/build/Runtime/Export/Shaders/Shader.bindings.cs:120)
UnityEditor.Experimental.VFX.Toolbox.VFXToolboxCanvas..ctor (UnityEngine.Rect displayRect, System.String shaderName) (at Assets/Plugins/Editor/Common/Canvas/VFXToolboxCanvas.cs:198)
UnityEditor.Experimental.VFX.Toolbox.ImageSequencer.ImageSequencerCanvas..ctor (UnityEngine.Rect displayRect, UnityEditor.Experimental.VFX.Toolbox.ImageSequencer.ImageSequencer editorWindow) (at Assets/Plugins/Editor/ImageSequencer/ImageSequencerCanvas.cs:97)
UnityEditor.Experimental.VFX.Toolbox.ImageSequencer.ImageSequencer.InitializeGUI () (at Assets/Plugins/Editor/ImageSequencer/ImageSequencer.GUI.cs:29)
UnityEditor.Experimental.VFX.Toolbox.ImageSequencer.ImageSequencer.OnGUI () (at Assets/Plugins/Editor/ImageSequencer/ImageSequencer.GUI.cs:43)
System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <437ba245d8404784b9fbab9b439ac908>:0)
Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <437ba245d8404784b9fbab9b439ac908>:0)
System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at <437ba245d8404784b9fbab9b439ac908>:0)
UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:380)
UnityEditor.HostView.Invoke (System.String methodName) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:374)
UnityEditor.HostView.InvokeOnGUI (UnityEngine.Rect onGUIPosition, UnityEngine.Rect viewRect) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:350)
UnityEditor.DockArea.DrawView (UnityEngine.Rect viewRect, UnityEngine.Rect dockAreaRect) (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/DockArea.cs:401)
UnityEditor.DockArea.OldOnGUI () (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/DockArea.cs:390)
UnityEngine.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt, UnityEngine.Matrix4x4 parentTransform, UnityEngine.Rect clippingRect, System.Boolean isComputingLayout, UnityEngine.Rect layoutSize, System.Action onGUIHandler, System.Boolean canAffectFocus) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:293)
UnityEngine.UIElements.IMGUIContainer.HandleIMGUIEvent (UnityEngine.Event e, UnityEngine.Matrix4x4 worldTransform, UnityEngine.Rect clippingRect, System.Action onGUIHandler, System.Boolean canAffectFocus) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:508)
UnityEngine.UIElements.IMGUIContainer.HandleIMGUIEvent (UnityEngine.Event e, System.Action onGUIHandler, System.Boolean canAffectFocus) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:491)
UnityEngine.UIElements.IMGUIContainer.HandleIMGUIEvent (UnityEngine.Event e, System.Boolean canAffectFocus) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:484)
UnityEngine.UIElements.IMGUIContainer.SendEventToIMGUI (UnityEngine.UIElements.EventBase evt, System.Boolean canAffectFocus) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:477)
UnityEngine.UIElements.IMGUIContainer.HandleEvent (UnityEngine.UIElements.EventBase evt) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/IMGUIContainer.cs:449)
UnityEngine.UIElements.EventDispatchUtilities.PropagateEvent (UnityEngine.UIElements.EventBase evt) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/Events/IEventDispatchingStrategy.cs:81)
UnityEngine.UIElements.MouseEventDispatchingStrategy.DispatchEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/Events/MouseEventDispatchingStrategy.cs:69)
UnityEngine.UIElements.EventDispatcher.ApplyDispatchingStrategies (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel, System.Boolean imguiEventIsInitiallyUsed) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:310)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:275)
UnityEngine.UIElements.EventDispatcher.ProcessEventQueue () (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:238)
UnityEngine.UIElements.EventDispatcher.OpenGate () (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:203)
UnityEngine.UIElements.EventDispatcherGate.Dispose () (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:44)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:301)
UnityEngine.UIElements.EventDispatcher.Dispatch (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel, UnityEngine.UIElements.DispatchMode dispatchMode) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/EventDispatcher.cs:159)
UnityEngine.UIElements.BaseVisualElementPanel.SendEvent (UnityEngine.UIElements.EventBase e, UnityEngine.UIElements.DispatchMode dispatchMode) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/Panel.cs:256)
UnityEngine.UIElements.UIElementsUtility.DoDispatch (UnityEngine.UIElements.BaseVisualElementPanel panel) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/UIElementsUtility.bindings.cs:404)
UnityEngine.UIElements.UIElementsUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr) (at /Users/builduser/buildslave/unity/build/Modules/UIElements/UIElementsUtility.bindings.cs:194)

Missing Unity Scene file

A Unity scene file with Graph showing how to properly use pfcache and SDF files from Houdini is needed. Especially for anyone new to the Visual Effects graph.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.