Coder Social home page Coder Social logo

mercenariesengineering / openexrid Goto Github PK

View Code? Open in Web Editor NEW
125.0 25.0 15.0 31.23 MB

OpenEXR files able to isolate any object of a CG image with a perfect antialiazing

License: MIT License

C++ 19.75% Makefile 0.03% C 0.66% Python 77.27% CMake 1.29% Shell 0.92% Dockerfile 0.05% Roff 0.04%
exr openfx-plug mask

openexrid's People

Contributors

benmercenaries avatar hulud75 avatar pierre-mercs 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

openexrid's Issues

[OFX] opening deepID crashed Natron

hi,
We are using natron to check the exr output from our renderFarm.
In the last tests were we using the v1.0-beta.19 and had display problems, but now on v1.0-beta.25 Natron won't read anymore exrID.

Why only one ID ?

Hello There,

This is Aghiles, from the 3Delight team. Questions:

  1. Why do we just have one ID per EXR file ? It is interesting to have different IDs (materials, namespaces, etc ...) in one file (Like in CrytoMatte). Maybe I missing somethings ?
  2. Why not consider any uint32 slice as an ID deep space ? Or jut list the deep slices in metadata. This will fix problem 1 above.

Let me know.

--
Aghiles

DeepOpenExrId: "False color" option should create RGBA channels

Hello!

I realize enabling "false color" doesn't work if there is no RGB channel in source.

Here is a simple graph:

image

My deepread doesn’t have any RGB channel.

If I use it directly, like DeepOpenEXRId2 and set false color ON, and put my viewer on it, nothing appear, it’s black.

My only solution is to "force" a RGB channel to exists in the Deep graph merging two deep inputs (DeepOpenEXRId1).

If I enable false color on DeepOpenEXRId1, I have proper color.

I suspect the problem appear here:

https://github.com/MercenariesEngineering/openexrid/blob/master/nuke/DeepOpenEXRId.cpp#L320

The else statement is not reached if no RGB channel exists.

I suggest to add something like:

Channel redChannel = DD::Image::getChannel ("rgba.red");
Channel greenChannel = DD::Image::getChannel ("rgba.green");
Channel blueChannel = DD::Image::getChannel ("rgba.blue");

On top of doDeepEngine(), then, after needed += Mask_Alpha;, add:

if (_colors)
{
    needed += redChannel;
    needed += greenChannel;
    needed += blueChannel;
}

It should do the job but more test is obviously needed, maybe creating channel is done another way. The idea is simply to ensure RBGA is available when "false color" is enabled.

Thanks in advance, keep the good job!

Add a versioning

Add a version file, a version tag in the open-fx plugin, a change log.

Why a separate file format?

(Sorry for filing an issue just to ask a question, but GitHub doesn't give anything else. It allows commenting on code, but it doesn't have any way to comment on a project...)

Being able to do per-object color correction like this is definitely a useful goal, but can't you do this with standard deep EXR files and an ID channel (and optionally some attributes to assign names to IDs)? If I render that out of Arnold in Maya 2017, I can apply color adjustments to single objects by selecting samples with that ID. File sizes aren't affected too badly, just a moderate increase due to the extra channel and having more samples where more than one object ID affects a pixel.

Missing OpenEXR CMake module

CMake build fails with missing package FindOpenEXR.cmake:

CMake Error at openexrid/CMakeLists.txt:1 (FIND_PACKAGE):
  By not providing "FindOpenEXR.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "OpenEXR", but
  CMake did not find one.

  Could not find a package configuration file provided by "OpenEXR" with any
  of the following names:

    OpenEXRConfig.cmake
    openexr-config.cmake

  Add the installation prefix of "OpenEXR" to CMAKE_PREFIX_PATH or set
  "OpenEXR_DIR" to a directory containing one of the above files.  If
  "OpenEXR" provides a separate development package or SDK, be sure it has
  been installed.

I've the feeling that either OpenEXRConfig.cmake or openexr-config.cmake is installed locally on Mercenaries workstations, but not released in openexrid. What OpenEXRConfig.cmake are you using ? Is that the one from USD ?

Fusion support

The openfx plug-in is not running on fusion.

Error: fr.mercenariesengineering.openexrid returned kOfxStatFailed for OfxImageEffectActionRender
OpenEXRId1 failed at time 0

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.