Giter VIP home page Giter VIP logo

dx11-vvvv's People

Contributors

azeno avatar dotprodukt avatar fibo avatar gregsn avatar gumilastik avatar id144 avatar joreg avatar letmp avatar mholub avatar mhusinsky avatar mrvux avatar sebllll avatar smakhtin avatar tebjan 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

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

dx11-vvvv's Issues

GeometryBuffer nodes aren't self explanatory

I've tried with GeometryBuffer and IndexedGeometryBuffer and can't seem to get any results. Are there any examples or hints on how to use these nodes?

image

p.s. if the paths get sorted so we can run the pack out of a git repo then adding help patches would become much easier.

Shader Editor Issues?

http://vvvv.org/forum/help-adding-3dmodels-to-dx11-particle-systems#comment-106554

In this thread I've come across a weird error, where having a constant attached to a geomtry and switching to that shader fixes an error, that makes the shader I'm editing fail and not fix itself when the code changes back to something that does work.
The code that breaks it is also a little odd, as soon as I add
float3 Tangent : TANGENT; to the vs_In struct it breaks.
Is it a syntax change since dx9?

Readback bug

when layout is set to float4x4, it gives transposed matrix on output

DX11.TextureFx source

tty throw an error when loading one of the DX11.TextureFX source help patches
mixer & filter works as expected!

VVVV.DX11.Nodes.Layers.DX11ImageShaderNode.Update(IPluginIO pin, DX11RenderContext context)
at VVVV.DX11.Lib.RenderGraph.DX11DeviceRenderer.ProcessNode(DX11Node node)

00:01:45 ERR : System.NullReferenceException in VVVV.DX11.Lib: Object reference not set to an instance of an object.

Line (DX11) creates white Render

When I start the help file of Line (DX11) everything freeze for some time, crashes the display Driver and then displays white renders

win7, 64bit, beta32 32 bit AMD card

Alt+2 on Preview goes gray

When putting a Preview into inline mode (alt+2), it goes gray and doesn't show anything
hiding and reshowing the patch fixes this issue and the preview works again.

Kinect World not functional

just connecting Kinect > World > Preview returns the following error every frame:

System.ArgumentException in mscorlib: An element with the same key has already been added.

Stacktrace:
bei System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
bei System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
bei SlimDX.ObjectTable.Add(ComObject comObject, ComObject owner)
bei SlimDX.ComObject.Construct(IUnknown* pointer)
bei SlimDX.Direct3D11.ShaderResourceView..ctor(Device device, Resource resource)
bei FeralTic.DX11.Resources.DX11DynamicTexture2D..ctor(DX11RenderContext context, Int32 width, Int32 height, Format format)
bei VVVV.DX11.Nodes.MSKinect.KinectBaseTextureNode.Update(IPluginIO pin, DX11RenderContext context) in c:\Users\joreg\dev\repos\dx11-vvvv\Nodes\VVVV.DX11.Nodes.MSKinect\Nodes\KinectBaseTextureNode.cs:Zeile 106.
bei VVVV.DX11.Lib.RenderGraph.DX11DeviceRenderer.ProcessNode(DX11Node node)

VVVV 29.2 doesn't start with latest commits

Here the error from /logstartup:

  1. E_FAIL: An undetermined error occurred (-2147467259)

Resulting in: An exception occurred while trying to create an instance of type 'VVVV.DX11.Factories.DX11NodesFactory'.

Resulting in: Cannot activate part 'VVVV.DX11.Factories.DX11NodesFactory'.
Element: VVVV.DX11.Factories.DX11NodesFactory --> VVVV.DX11.Factories.DX11NodesFactory --> DirectoryCatalog (Path="C:\vvvv\vvvv_45beta29.2_x86_DX11_DEV\lib\factories")

Resulting in: Cannot get export 'VVVV.DX11.Factories.DX11NodesFactory (ContractName="VVVV.PluginInterfaces.V2.IAddonFactory")' from part 'VVVV.DX11.Factories.DX11NodesFactory'.
Element: VVVV.DX11.Factories.DX11NodesFactory (ContractName="VVVV.PluginInterfaces.V2.IAddonFactory") --> VVVV.DX11.Factories.DX11NodesFactory --> DirectoryCatalog (Path="C:\vvvv\vvvv_45beta29.2_x86_DX11_DEV\lib\factories")

Resulting in: Cannot set import 'VVVV.Hosting.HDEHost.AddonFactories (ContractName="VVVV.PluginInterfaces.V2.IAddonFactory")' on part 'VVVV.Hosting.HDEHost'.
Element: VVVV.Hosting.HDEHost.AddonFactories (ContractName="VVVV.PluginInterfaces.V2.IAddonFactory") --> VVVV.Hosting.HDEHost

FrameDelay bugs

Often get a COM exception when closing a patch which uses FrameDelay on a texture.
After that, FrameDelay will not work until restart VVVV.

FrameDelay also seems not to work with TextureFX for me (e.g. 2nd input is FrameDelay of output).

Assimp GeometryFile & values < 0.0043

Using vvvv b31 x86. The DX11 Assimp nodes seem to remove any polygons that are smaller then ~.0043 squares in vvvv units. The same mesh will load and display fine in the current DX9 flavour Assimp.

Geometry misses tangentd

Standard geometry nodes should have tangents/binormal optionally, so they can be used for normal mapping.

FileTexture(DX11 2d) Updates all slices

Hitting return by mistake while writing the title! Sorry
If you change one string in a spread of file names, file texture reloads all the slices, would be nice if it didn't ;)
Also VLC reads pngs, but doesn't like the transparency in the them it garbles the colours, somehow I don't imagine thats fixable, but isn't as important as playing videos anyway!

vvvv does not start (CompositionError)

On startup with current Beta, the DX9 nodes are missing but no DX11 nodes show up. With current Alpha, I get a CompositionError and vvvv does not start.

AA on renderers

If mode is not supported, look if we can add the closest mode instead.

For temp target, just auto resolve, (people who will use Texture2DMS will already be advanced).

Crash when Topology is set to undefined

I tried out antokhio's nice Rutt Etra example in this thread: http://vvvv.org/forum/rutt-etra-effect

more precisely this patch: http://vvvv.org/sites/default/files/user-files/pixel11.rar

and I played around with changing the Topology in Topology (DX11.Geometry) to see what it did and when changing it to undefined my whole computer froze, mouse and keyboard did nothing. no ctrl+del nothing. only killing the power and starting over worked to get the machine up again.

Sune

Full Screen

Sort full screen for windowed renderer
Add custom resolution

Video driver crashes at any attempt to render.

Here's a log I managed to record once (might not be the cause):

2013.09.02 21:06:24:171 : 00:01:00 ERR : SlimDX.Direct3D11.Direct3D11Exception in SlimDX: DXGI_ERROR_DEVICE_REMOVED: Hardware device removed. (-2005270523)

Stacktrace:
   at SlimDX.Result.Throw[T](Object dataKey, Object dataValue)
   at SlimDX.Result.Record[T](Int32 hr, Boolean failed, Object dataKey, Object dataValue)
   at SlimDX.Direct3D11.Buffer.Build(Device device, DataStream data, Int32 sizeInBytes, ResourceUsage usage, BindFlags bindFlags, CpuAccessFlags accessFlags, ResourceOptionFlags optionFlags, Int32 structureByteStride)
   at SlimDX.Direct3D11.Buffer..ctor(Device device, DataStream data, BufferDescription description)
   at FeralTic.DX11.Utils.BufferHelper.CreateVertexBuffer(DX11RenderContext context, DataStream ds, Boolean alloraw, Boolean dispose) in C:\Users\Casey\Documents\dx11-vvvv\FeralTic\Core\DX11\Utils\BufferHelper.cs:line 42
   at FeralTic.DX11.Geometry.DX11PrimitivesManager.Box(Box settings) in C:\Users\Casey\Documents\dx11-vvvv\FeralTic\Core\DX11\Geometry\Primitives\DX11Primitive_Box.cs:line 114
   at VVVV.DX11.Nodes.DX11BoxNode.GetGeom(DX11RenderContext context, Int32 slice) in C:\Users\Casey\Documents\dx11-vvvv\Nodes\VVVV.DX11.Nodes\Nodes\Geometry\Primitives\DX11BoxNode.cs:line 30
   at VVVV.DX11.Nodes.DX11BasePrimitiveNode.Update(IPluginIO pin, DX11RenderContext context) in C:\Users\Casey\Documents\dx11-vvvv\Nodes\VVVV.DX11.Nodes\Nodes\Geometry\Primitives\DX11BasePrimitiveNode.cs:line 58
   at VVVV.DX11.Lib.RenderGraph.DX11DeviceRenderer.ProcessNode(DX11Node node) in C:\Users\Casey\Documents\dx11-vvvv\Core\VVVV.DX11.Lib\RenderGraph\DX11DeviceRenderer.cs:line 184

2013.09.02 21:06:24:172 : 00:01:00 ERR : System.NullReferenceException in VVVV.DX11.Nodes: Object reference not set to an instance of an object.

Stacktrace:
   at VVVV.DX11.Nodes.GeometryTopologyNode.Update(IPluginIO pin, DX11RenderContext context) in C:\Users\Casey\Documents\dx11-vvvv\Nodes\VVVV.DX11.Nodes\Nodes\Geometry\GeometryTopologyNode.cs:line 66
   at VVVV.DX11.Lib.RenderGraph.DX11DeviceRenderer.ProcessNode(DX11Node node) in C:\Users\Casey\Documents\dx11-vvvv\Core\VVVV.DX11.Lib\RenderGraph\DX11DeviceRenderer.cs:line 184

2013.09.02 21:06:24:179 : 00:01:00 ERR : SlimDX.Direct3D11.Direct3D11Exception in SlimDX: DXGI_ERROR_DEVICE_REMOVED: Hardware device removed. (-2005270523)

Stacktrace:
   at SlimDX.Result.Throw[T](Object dataKey, Object dataValue)
   at SlimDX.Result.Record[T](Int32 hr, Boolean failed, Object dataKey, Object dataValue)aValue)
   at SlimDX.Result.Record[T](Int32 hr, Boolean failed, Object dataKey, Object dataValue)

Let me know if there's more info I can give that would be useful.

WithinViewport, Billboard, etc don't work with DX11

I think I saw this mentioned elsewhere.

I presume this is still more of an issue of the plugin framework not supporting these types of transforms (i.e. transforms which carry more information than just 4x4 doubles),

videoIn(dx11) goes to black after 10-15secs

Tried in beta 30 and 32, only using my built in web cam on my macbook though...
Resetting doesn't help, disconnecting and reconnecting doesn't solve it either...
I get this exception


Exception log with detailed tech info. Generated on 28/08/2013 14:46:34.
You may send it to the application vendor, helping him to understand what had happened.
Application title: ����

Application file: C:\Users\cat\Desktop\vvvv_45beta30.2_x86\vvvv.exe

Exception class: EAccessViolation
Exception message: Access violation at address 00491707 in module 'vvvv.exe'. Read of address 00000061.

Exception address: 00491707

Main thread ID = 3956

Exception thread ID = 3956

Exception stack
Stack list, generated 28/08/2013 14:46:33
(00145993){vvvv.exe } [00546993]

Roadmap for next release

List of features that I'd like to have for next release.

FeralTic (I'll include here so it's all in a single post):

  • New Geometry type, which allows several vertex buffers.
  • Primitives revamp : More options to standard geometry, mostly having option to have standard primitives as Single Interleaved buffer, One Vertex Buffer per attribute, One StructuredBuffer per attribute.
  • Unify constructors: Some buffers use device, some RenderContext, all should use RenderContext.
  • Clean up some method for dynamic data.
  • Improve Render States, to have better caching for presets, and avoid string input when non necessary.

New library for FeralTic with more high levels elements (naming to be determined):
-Kinect
-Vlc
-Assimp
-Shader Manager
-Color space kernels.
-Other Shader routines which are a pain for patch but super easy as nodes.
-StreamOut/Compute Shader for basic primitives (when useful).

Ideally with it I want to remove as much core logic as possible from the nodes themselves.

Also I think those modifications will start to prepare for a step forward, eg: having much more high level nodes.
For the moment I still think most nodes are too low level, which makes it hard for a user who doesn't know shader
programming to use. Having some nodes maybe less configurable but easy to use would definitely start to make a big difference. And of course keep the low level aspect for coders ;)

VVVV Core:

  • Stack for render space, for the moment it's a bit override/restore, stack would be much nicer.
  • Cache for Renderers, avoids a scan every frame, and it would be pretty easy. Could lead to some perf improvement in complex patches.
  • Better shader variables caching
  • Proper full screen support.
  • New type of pin (Input pin that allows multiple output connections to it). Needs to be discussed with devvvvs since it's of course a decent core change, but I think that is needed to bring dx11 to next level). If this ever gets implemented this roadmap will totally explode ;)
  • Device manager to become configurable (there's 3 devices handler in there, so user should be able to choose).

VVVV Nodes:

  • Offset many core elements to feraltic , as mentionned above.
  • Vertex/Index Buffer join/split
  • Normals node (using compute shader, will be maybe tricky to have it handle all geometry types).
  • Node generators for geometry: Since we now have a descriptor, generating code should be pretty much trivial.
  • Vlc node to become format agnostic: We can retrieve native format, so we should be able to have Pixel/Compute shaders to perform this. That will increase performance. Some work has been already started on it.
  • Some nodes from my personal library to make it in the core (multi buffer renderer...).
  • Kinect revamp : It badly needs improvements, some tasks are performed several times per frame, got some new ideas for it.
  • Assimp nodes to have more load options.
  • Plugin to export geometry (obj or x file)
  • ScreenShot node.
  • Proper VideoIn node
  • GPU accelerated video decoder (FileStream2 in dx11 basically, but properly spreadable and all that stuff)

That's it for the current ideas, I'll probably add some more later, but I think it's already quite ambitious and hefty ;)

Pixel Billboard works in 1/2 pixels

Not sure if this is a bug or intented, but pixel billboard needs 2x the values of scale and transform to work as the dx9 version, ie if you renderer is 800px wide, to fill it with a quad you need to scale by 1600, the same for translate, alternately you can make your quad sizeXY 2, is this the desired effect?

DirectX11 + vvvv future (discussion)

Wasn't sure whether to put this in forum or here, but found it would be nicer in github, so here it is.

DX11 development reaches (for me at least) a few major issues.
Before to consider doing drastic change I thought that I would expose those and maybe people could also submit ideas.

Main problem is now DX11.1 / Win8 is out, and SlimDX has pretty much no support for it (and I'm not sure if it will ever have).

So for now it seems using SlimDX is slowing down my way to add access to extra features, some of them which are really useful (new video decoder, new pipeline functions...)

So I see 3 options to move forward:
-Add new features and namespaces in SlimDX
-Move to another API (eg SharpDX, which is pretty much the only one)
-Move the core engine to c++ and provide custom wrapper (eg something a bit more high level than just wrapping interfaces, which is what feraltic does actually).

From what I see time wise for each option:
-SlimDX : That would likely be quite time consuming, also there's a lot of things in the current architecture than I'm not too fond of (Object Table for example).
-SharpDX move : Probably the fastest in some ways (I already did some tests porting over), still lot of rebarbative work and lot of testing.
-Custom Move: I already have a c++ version of FeralTic (not as big as the c# one yet). So that would speed things up. That's probably a bit more time consuming than others, but I see quite some benefits for it, like not having to wait for updates, still possibility to have interop with above wrappers. Biggest drawback will likely be that it will be harder to maintain by community since I know most people are more comfy with c#.

Any thoughts/comments/ideas welcomed...

Kinect Face crash

running the Face (DX11.Geometry Microsoft) help.v4p :
vvvvbeta31 + sdk 1.7
when the Face (Kinect Microsoft) node start to track something it crash!!!
************** Exception Text **************
System.DllNotFoundException: Unable to load DLL 'FaceTrackLib.dll': Le module spécifié est introuvable. (Exception from HRESULT: 0x8007007E)
at Microsoft.Kinect.Toolkit.FaceTracking.NativeMethods.FTCreateFaceTracker(IntPtr reserved)
at Microsoft.Kinect.Toolkit.FaceTracking.FaceTracker.Initialize(CameraConfig newColorCameraConfig, CameraConfig newDepthCameraConfig, IntPtr colorImagePtr, IntPtr depthImagePtr, FaceTrackingRegisterDepthToColor newRegisterDepthToColorDelegate)
at Microsoft.Kinect.Toolkit.FaceTracking.FaceTracker..ctor(KinectSensor sensor)
at VVVV.MSKinect.Nodes.KinectFaceNode.SkeletonFaceTracker.OnFrameReady(KinectSensor kinectSensor, ColorImageFormat colorImageFormat, Byte[] colorImage, DepthImageFormat depthImageFormat, Int16[] depthImage, Skeleton skeletonOfInterest)
at VVVV.MSKinect.Nodes.KinectFaceNode.KinectFaceNode_AllFrameReady(Object sender, AllFramesReadyEventArgs e)
at VVVV.MSKinect.Lib.KinectRuntime.Runtime_AllFramesReady(Object sender, AllFramesReadyEventArgs e)
at Microsoft.Kinect.ContextEventHandler`1.SendOrPostDelegate(Object state)

Kinect High Res Depth random crash

a bit ransom but
switching kinect High Res Depth to off when kinect is enabled .... crash

************** Exception Text **************
System.ArgumentException: The data buffer length must match the length required by the associated ImageFormat.
Parameter name: pixelData
at Microsoft.Kinect.DepthImageFrame.CopyPixelDataTo[T](T[] pixelData, Action2 copyFunction) at Microsoft.Kinect.DepthImageFrame.CopyPixelDataTo(Int16[] pixelData) at VVVV.DX11.Nodes.MSKinect.KinectPlayeTextureNode.DepthFrameReady(Object sender, DepthImageFrameReadyEventArgs e) at System.EventHandler1.Invoke(Object sender, TEventArgs e)
at VVVV.MSKinect.Lib.KinectRuntime.Runtime_DepthFrameReady(Object sender, DepthImageFrameReadyEventArgs e)
at Microsoft.Kinect.ContextEventHandler`1.SendOrPostDelegate(Object state)

Anti-Aliasing?

drawing a mesh as lines, and turning anti-aliasing on doesn't perform anti-aliasing
i don't think i'm getting anti-aliasing on anything. should i be worried? or is this related to a known issue?
GeForce 680

Template shaders and texturefx

I think you've mentioned this before.
But it'd be great to have clean templates to use (especially for texturefx, as there's aren't really any texturefx which are near clean to start with)

Behaviours of spreading a variable in the cbPerDraw buffer

If you spread a variable in cbPerObj buffer, then you get a spread of objects.
I think that if you spread a var in cbPerDraw, then you should get a behavious like:

foreach(cbPerDraw) {
    foreach(cbPerObj) {
....
    }
}

as opposed to

foreach(max(cbPerDraw, cbPerObj)) {
}

Usage case example:
Having a ViewPortSelect variable in the cbPerDraw buffer, which determines which viewport each draw should land on. In that case, you want to have the possibility to draw all objects to all viewports.

Anyone have opinions?

Forking dx11

Ok, principal question:

Where are we supposed to clone dx11-vvvv to relative to the vvvv path so that:

  1. Other plugins with src inside the vvvv folder can reference dx11 projects
  2. Help patches made by hitting F1 on a node will end up being saved in the right place to be committed back to github

Elliot

ViewPort Pin on Renderer

I came across unexpected behaviour regarding that pin.

have a look at this, there's an example patch.

you mentioned that issues (on github) are easier for you to track, that's why this is here and in the forums.

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.