Page MenuHome

JPEG 2000 Images rendering pink on macOS - Cycles
Closed, ResolvedPublic

Description

System Information
macOS Sierra 10.12.4
Intel HD Graphics 4600 1536 MB
NVIDIA GeForce GTX 570

Blender Version
Broken: 2.79 bb4a12914fa
Worked: (optional)

Short description of error
JPEG 2000 image planes (Cycles) are rendering as pink. Project was originally created on a Ubuntu machine and worked perfectly. Packing the image seems to fix the problem, but changing the image texture node to image sequence seems to break it again (the frames aren't being flagged as missing/not can't be loaded). Attached are details from a Hackintosh machine, but I verified the problem on a 2016 iMac too.

Exact steps for others to reproduce the error
Open the blend file attached on macOS. Switch to rendered view. It should be pink, indicating a missing texture.

Event Timeline

Sergey Sharybin (sergey) triaged this task as Normal priority.

Works on Linux. Wondering whether macOS version of OIIO is compiled with OpenJpeg2000 support?

As in screenshot, image that is tried to read is : 05_3c_00000.jp2.001 , if you select 05_3c_00000.jp2, you'll get the texture correctly. So problem is not OIIO OpenJpeg2000 support. Something else is going on. Image sequence trying to increment the extension? (wild guess)

OIIO doesn't do image sequence manipulation, it's operating on file paht given to it as-is. Can you verify whether image_user_file_path() is giving a correct file name?

Yes, sounds plausable. The project was originally made on a Ubuntu machine, no problems. The image texture node was referencing an image sequence. Opening on macOS, without any changes (I was going to set it rendering), it was pink. Importing a single JP2000 image on macOS worked ok...

The BKE_image_user_file_path() gives:

//textures/05_3c_00000.jp2

For that .001 version, and it's not packed so it can't be found.

Remember that image sequences/movies can't be packed.

Apologies, I was trying lots of different things (packing/unpacking) to figure out what specifically was causing the problem, so the .001 may be a bit of a red herring...

I've just created a clean version with the following steps:

  • Set render engine to Cycles
  • Add image as plane
  • Select all of the images in the sequence, checking 'Animate Image Sequences' in the left side panel.
  • Set Material Settings to 'Shadeless' in the left side panel.
  • Click 'Import Images as Planes'
  • Set viewport to rendered view

I've zipped the Blender project together with the four images in the image sequence. Should be as simple as unzipping, opening Blender on macOS and switching the viewport to rendered view to see the bug.

With a bit more testing (since zipping the attached zip), it doesn't seem to make a difference if it's an image sequence or not...... Really really odd......

Yeah, now confirmed.
Textures are found, you can see them in textured/material viewport, but moment you hit cycles on, you can see nothing but pink panther's back.

Arto Kitula (akitula) raised the priority of this task from Normal to Confirmed, Medium.Sep 21 2017, 5:03 PM

It is OIIO thing. For now, you need now to use other format for the images, sorry for inconvenience caused.

No problem at all, I'd already converted the image sequence into a ProRes clip to finish off the shot, just wanted to report the bug 👍