<div dir="auto"><a href="https://github.com/mcneel/CCSycles/tree/rhino-6.x/OpenImageIO">https://github.com/mcneel/CCSycles/tree/rhino-6.x/OpenImageIO</a></div><div class="gmail_extra"><br><div class="gmail_quote">On 5 Mar 2018 6:25 pm, "Nathan Letwory" <<a href="mailto:nathan@mcneel.com">nathan@mcneel.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">We use them in RhinoCycles as well, the problem is just that OIIO is a code dependency that could be abstracted away completely.<div dir="auto"><br></div><div dir="auto">Biggest problem though is ustring and company. Those are use throughout. For RhinoCycles I have a stripped down OIIO with only those utility classes left.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 5 Mar 2018 6:03 pm, "Mohamed Sakr" <<a href="mailto:3dsakr@gmail.com" target="_blank">3dsakr@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">as Stefan mentioned, 

<span style="color:rgb(34,34,34);font-family:Menlo;font-size:11px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">ImageManager::builtin_image_</span><span style="color:rgb(34,34,34);font-family:Menlo;font-size:11px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">in<wbr>fo_cb, ImageManager::builtin_image_</span><span style="color:rgb(34,34,34);font-family:Menlo;font-size:11px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">pi<wbr>xels_cb and ImageManager::builtin_image_</span><span style="color:rgb(34,34,34);font-family:Menlo;font-size:11px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">fl<wbr>oat_pixels_cb<br>we use these callbacks also in Cycles4D to handle Cinema4D textures.</span></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 5, 2018 at 5:29 PM, Stefan Werner <span dir="ltr"><<a href="mailto:stewreo@gmail.com" target="_blank">stewreo@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">There is a callback system already, Blender is using it to load packed textures. If I remember correctly, the Poser integration is loading all textures through its own imaging library and not OIIO.<div><br></div><div>The callbacks are:</div><div><div style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;background-color:rgb(255,255,255)">ImageManager::builtin_image_in<wbr>fo_cb, ImageManager::builtin_image_pi<wbr>xels_cb and ImageManager::builtin_image_fl<wbr>oat_pixels_cb</div><div><span class="m_4084677983674697922m_-7582929209413526943HOEnZb"><font color="#888888"><div><br></div></font></span><div><span class="m_4084677983674697922m_-7582929209413526943HOEnZb"><font color="#888888">-Stefan</font></span><div><div class="m_4084677983674697922m_-7582929209413526943h5"><br><div><br><blockquote type="cite"><div>On 5. Mar 2018, at 14:58, Nathan Letwory <<a href="mailto:nathan@mcneel.com" target="_blank">nathan@mcneel.com</a>> wrote:</div><br class="m_4084677983674697922m_-7582929209413526943m_145299771793517403Apple-interchange-newline"><div><div dir="auto">The better way of course would be to have a callback system whereby clients (Blender, Rhino, Goxel) can register the necessary functions to handle image data the way they see fit. For Blender they'd be the current functions behind which OIIO is hidden etc.</div><div class="gmail_extra"><br><div class="gmail_quote">On 5 Mar 2018 3:52 pm, "Nathan Letwory" <<a href="mailto:nathan@mcneel.com" target="_blank">nathan@mcneel.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">For RhinoCycles I have added a simple define bypass to cut out much of the image reading code.<div dir="auto"><br></div><div dir="auto">Unfortunately OIIO utility code is used quite extensively, so I left those usages in.</div><div dir="auto"><br></div><div dir="auto"><a href="https://github.com/mcneel/cycles/commit/5f8ca9d2e49ad63a77768bac0b8e4b987f761149" target="_blank">https://github.com/mcneel/cycl<wbr>es/commit/5f8ca9d2e49ad63a7776<wbr>8bac0b8e4b987f761149</a><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 5 Mar 2018 3:33 pm, "Guillaume Chéreau" <<a href="mailto:guillaume.chereau@gmail.com" target="_blank">guillaume.chereau@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Mar 5, 2018 at 8:37 PM, Brecht Van Lommel<br>
<<a href="mailto:brechtvanlommel@pandora.be" target="_blank">brechtvanlommel@pandora.be</a>> wrote:<br>
<br>
> Alternatively you keep use the OpenImageIO_Util library that is part of<br>
> OpenImageIO. It is much smaller and includes just these utilities, so you'd<br>
> only have to make the image reading/writing part in Cycles optional.<br>
<br>
Yes that would be acceptable like that I guess.  I will try to keep<br>
working on that when I have time and see what I can come up with.<br>
Meanwhile you can see a screenshot of my first attempt of using cycles in goxel:<br>
<br>
<a href="https://user-images.githubusercontent.com/107679/36977390-ef3db750-20bb-11e8-9064-b8c9ddc3504f.png" rel="noreferrer" target="_blank">https://user-images.githubuser<wbr>content.com/107679/36977390-ef<wbr>3db750-20bb-11e8-9064-b8c9ddc3<wbr>504f.png</a><br>
<br>
Regards,<br>
Guillaume<br>
______________________________<wbr>_________________<br>
Bf-cycles mailing list<br>
<a href="mailto:Bf-cycles@blender.org" target="_blank">Bf-cycles@blender.org</a><br>
<a href="https://lists.blender.org/mailman/listinfo/bf-cycles" rel="noreferrer" target="_blank">https://lists.blender.org/mail<wbr>man/listinfo/bf-cycles</a><br>
</blockquote></div></div>
</blockquote></div></div>
______________________________<wbr>_________________<br>Bf-cycles mailing list<br><a href="mailto:Bf-cycles@blender.org" target="_blank">Bf-cycles@blender.org</a><br><a href="https://lists.blender.org/mailman/listinfo/bf-cycles" target="_blank">https://lists.blender.org/mail<wbr>man/listinfo/bf-cycles</a><br></div></blockquote></div><br></div></div></div></div></div></div><br>______________________________<wbr>_________________<br>
Bf-cycles mailing list<br>
<a href="mailto:Bf-cycles@blender.org" target="_blank">Bf-cycles@blender.org</a><br>
<a href="https://lists.blender.org/mailman/listinfo/bf-cycles" rel="noreferrer" target="_blank">https://lists.blender.org/mail<wbr>man/listinfo/bf-cycles</a><br>
<br></blockquote></div><br></div>
<br>______________________________<wbr>_________________<br>
Bf-cycles mailing list<br>
<a href="mailto:Bf-cycles@blender.org" target="_blank">Bf-cycles@blender.org</a><br>
<a href="https://lists.blender.org/mailman/listinfo/bf-cycles" rel="noreferrer" target="_blank">https://lists.blender.org/mail<wbr>man/listinfo/bf-cycles</a><br>
<br></blockquote></div></div>
</blockquote></div></div>