Ivan DeWolf

ivan

About Me

Connect

LOCATION
Canada
WEBSITE

Houdini Skills

Availability

Not Specified

My Talks

obj-image HUG
Generating G-Code

Recent Forum Posts

rendering to 8-bit image Nov. 18, 2024, 12:39 a.m.

I am trying to render out an 8-bit image (preferably in a tif file) from Karma.

I can switch it from 16-bit float to 32-bit float, but I cannot find a way to render to an 8-bit per channel tif file. I tried setting the filename suffix to tif3, but that didn't work.

is it possible?

I also tried rendering to an EXR, and then converting to an 8-bit file in copernicus, but that also seems to only output 16-bit or 32-bit float


as a workaround, I rendered to a JPG, which does work, but involves opening the jpg in gimp and exporting to 8-bit tif file.

multiprocessing in Houdini Python panel Sept. 1, 2023, 9:06 p.m.

ok, well, if anyone else comes across this thread, here is 1 working bit of code. Thank you for holding the duck.

from PySide2 import QtWidgets
from PySide2 import QtGui
from PySide2 import QtCore
import time

class VideoThread(QtCore.QThread):
    def setStuff(self, vidscr, butt):
        self.vidscr = vidscr
        self.butt = butt

    def run(self):
        loop = True
        while loop:
            # blink blink
            pm = QtGui.QPixmap(320, 240)
            pm.fill(QtGui.QColor('darkGray'))
            self.vidscr.setPixmap(pm)
            time.sleep(1)
            pm.fill(QtGui.QColor('cyan'))
            self.vidscr.setPixmap(pm)
            time.sleep(1)
            if not self.butt.isChecked():
                loop = False

class vidWidg(QtWidgets.QWidget):
    def buildUI(self):
        self.videoScreen = QtWidgets.QLabel(self)
        self.startButton = QtWidgets.QPushButton("run blinky", self)
        self.startButton.setCheckable(True)
        self.startButton.toggled.connect(self.togg)
        layout = QtWidgets.QVBoxLayout()
        layout.addWidget(self.videoScreen)
        layout.addWidget(self.startButton)
        self.setLayout(layout)
       
    def togg(self, val):
        if val:
            self.thread = VideoThread()
            self.thread.setStuff(self.videoScreen, self.startButton)
            self.thread.start()
        else:
            self.thread.wait()
            self.thread.quit()
           

def createInterface():
     root_widget = vidWidg()
     root_widget.buildUI()

     return root_widget

multiprocessing in Houdini Python panel Sept. 1, 2023, 2:24 p.m.

I'm trying to get qthreads running in a python panel, it's been problematic, Are there any samples anywhere of this working?