这篇文章上次修改于 340 天前,可能其部分内容已经发生变化。
注意:阅读本文之前需要充分了解houdini配置文件的目录结构
众所周知,houdini默认存在备份功能,当在文件保存的时候,它将把之前的文件自动备份到hip/backup文件夹下,但是,存在一个或多个缺点,例如,当hip下或hip上级目录结构被充分破坏时,backup文件夹里的所有备份也被一并删除,倘若不可逆转上述过程,这可能是一个巨大的打击。
可以通过双重备份技术来防御该行为,在默认备份功能执行后,将备份文件顺便保存在其他盘。如果我的工程文件保存至E盘,当E盘的hip文件连同hip/backup文件遭到破坏时,仍然在D盘存有备份,避免了一些损失。
具体操作:在houdini.env文件中加入下述指令
HOUDINI_BACKUP_DIR_ENABLE = 1
另外建立一个名为456.py文件,放在houdini20.0\scripts\中,文件内容为:
import hou
import os
if(int(hou.getenv('HOUDINI_BACKUP_DIR_ENABLE'))==1):
def backup_func(event_type):
if (event_type == hou.hipFileEventType.AfterSave):
hou.hipFile.removeEventCallback(backup_func)
hou.putenv('HOUDINI_BACKUP_DIR','D:/HOUDINI_BACKUP/'+os.path.dirname(hou.hipFile.path()).replace(':',''))
hou.hipFile.saveAndBackup()
hou.unsetenv("HOUDINI_BACKUP_DIR")
hou.hipFile.addEventCallback(backup_func)
hou.hipFile.addEventCallback(backup_func)
hou.putenv('HOUDINI_BACKUP_DIR_ENABLE','0')
由于操作简单,故不作演示实际效果。