自动动手组装Autodesk Flame电影级非编工作站
全球最大的二维丶三维数字设计软件公司欧特克(Autodesk, Inc)发布了剪辑完成和视觉特效系统的2010版 Autodesk Smoke 和 Autodesk Flint 软件,以及 Autodesk Lustre 和 Autodesk Incinerator 调色配光软件的2009 Extension 1 版本。同时发布的还有2010版 Autodesk Flame 和 Autodesk Inferno 视觉特效系统及其全新的创作伴侣软件 Autodesk Flare。新推出的一系列软件将支持多种格式和整合的工作流程,帮助用户提高传媒娱乐业数字内容的制作效率和产量,将艺术家和创意人员从繁重的工作中解脱出来,大幅提升他们的创意自由度。
Autodesk® Flame® 是用于高速合成、高级图形和客户驱动的交互设计的终极视觉特效制作系统。Autodesk Flame 提供出色的性能和荣获奥斯卡奖的工具。从全国性的电视广告片和音乐电视到风靡一时的电影,Flame 为视觉特效艺术家成功完成制作项目提供了所需的交互性和灵活性。
使用这一业界领先的视觉特效工具,以思考的速度进行创作,满怀信心地完成项目。
本文目的
这是一篇Flame安装的中文向导。主要是参照IFFFS_install_2010_sp03英文版安装帮助及Autodesk stonewire2010_filesystem_networking_guide官方设置向导,结合我自己安装过程遇到的无数问题翻译、总结而成。说实话,破解并不是一件什么光彩的事情,之所以写这套方法是希望能有更多优秀人才能够有机会接触、学习世界级最高端的合成软件,为日后中国影视的腾飞积蓄技术力量。如果您或您的公司具备购买正版的能力并打算用在商业作品的创作上,为了您的利益着想,还是建议您致电Autodesk公司购买正版软件。
硬件要求
英文版的安装文档里主要提到有三点,一是X64的处理器,二是Quadro Fx系列专业显卡(1000到5600都行,但4500到5600最好),第三是23、24寸的显示器,或者能够支持1920*1200分辨率的显示器也可以。
以上三点,要是前两点都没有达到的话,那就没有往下看下去的必要了。虽然没试过,但估计能装上的可能性不大。至于显示器,这点我是没有达到,我的是三星2243SW 22寸半的,没有达到23寸,分辨率最高1920*1080,也没有达到要求的1920*1200,最后运行时画面显示不全。
下面是我自己的机器配置,供大家参考:
- CPU Xeon 5462*2
- 主板 X7dwa-n
- 显卡 Quadro Fx 4500
- 内存 16G DDR2-800 Full Buffered DIMM
- 显示器 SamSung 2243SW Sony G220
- 手写板 Wacom CTE-630
系统选择、安装
知道有Linux这么一个系统,源于之前想接触苹果的Shake,可PC上的版本只到2.51,被苹果收购之后就再也没有更新,但对应的有linux版本。一直很想装装试试,但是听闻linux主要是命令行的操作模式,这让习惯了Windows概念的我再返回到类似dos的操作模式实在有点不适应。所以这个想法一直没有实现,正是因为对linux系统的不了解让我这回安装还是费了很大的劲。从Ubantu到Redhat再到SUSE,最后选定的是Centos。Ubantu采用的Debian 软件包管理模式,这使得对rpm(Redhat 软件包管理器)的支持并不是很好,需要通过程序 alien 将.rpm 文件转化为.deb 文件,但是这种转换并不能保证100%的准确,官方文档中明确表示如果有deb的软件包的应该使用deb的,不赞成使用rpm的软件包。基于这个问题,在选择linux系统上还是尽量选择基于rpm软件包管理体系的系统。不过就个人感觉来说,Ubantu还是非常平易近人的。至于Red Hat 有一个很严重的问题,那就是RH的源是需要付费的。对于linux系统离开了网络支持感觉是一件很可怕的事情。SUSE的界面不错,不过可能因为个人水平的问题,我的网卡死活装不上。
最后是在Centos5.3上完成安装。图形界面选择KDE。安装上DKU后,Autodesk会把启动界面改成Autodesk的专用KDE界面。
安装Centos的时候注意几点,尽量把内核kernel、gcc与开发编译相关的能选上就都选上,软件包列表看不懂、不知道干嘛用的一律选上,要不然后面安装驱动或是其他软件的时候缺这个包那个包的着实很麻烦。但注意一点,不要选择虚拟化技术,因为Nvidia的驱动是不能在xen内核下完成编译的。 #p#page_title#e#
Linux系统下遇到什么问题,真解决不了的话,最好的建议就是Google。
显卡安装
和Windows系统所不同的是,Gnome和KDE桌面环境都是依赖于X window的。这使得linux的显卡驱动要比Window要稍微复杂一些。主要是得先退出X window,然后才能在命令行状态下安装显卡驱动。
先到Nvidia公司下载最新版的驱动,我这里用的是NVIDIA-Linux-x86_64-185.18.14-pkg2.run最新版的驱动。
因为安装驱动程序需要配合核心来编译,所以会使用到内核源代码,此外,也需要编译器 ( compiler ) 的帮助,因此,先确定当前的 Linux 系统当中已经下列软件包的存在 :kernel-source(kernel-devel) 、kernel 、gcc 、make、qt。
打开一个终端,使用命令检查:
# rpm -qa | grep gcc;rpm -qa | grep qt;
#rpm -qa | grep make;rpm -qa | grep kernel
要是没有备齐所需的安装包,可以先到系统盘下去查找对应的软件包。
或者在联网的情况下用yum install <软件包名>,像我自己的缺kernel-devel,那就yum install kernel-devel,系统会联网查找对应内核的软件包进行安装。
在home目录下建立display目录,把驱动程序拷到这个目录下,如果你怕打字的话,也可以把文件名改成display.run
#gedit /etc/inittab 用文字编辑器打开inittab文件,把里面的5改成3,即开机启动命令模式。
存盘,重新启动,注意在系统菜单不要选择xen内核;以根用户的身份输入密码进入linux文本操作模式
#cd /home/display/
# sh display.run
这个界面问是否尝试连接到Nvidia的官网升级所需附件,这里我都是选择NO,后面的几项都选择Yes就好。
#init 5 进入图形界面
成功进入后把之前etc目录下的inittab里的3改回5.
其实,这一步装不装无所谓,因为后面在安装DKU的时候,系统会帮你安装驱动程序,但对于刚接触linux 的fish,如果万一出现内核与编译软件包不匹配的情况,就很难再进入到X windows图形界面。虽然命令行也能救回来,不过这需要有一定的经验。当然,要是你对linux了如指掌,这一步是完全没有必要的。
安装DKU
安装Flame之前,得先安装DKU(Discreet kit utilities)
把dku 4.04随便拷到一个目录下,打开终端,进入该目录。
#tar -xvf DKU_4.0.4.tar
接下来,就是根据现有config文件夹下的pl文件来配置Config_generic_el5.pl文件,你可以参考跟你机器相似pl文件来配置。这些pl文件主要是配置kernel及相关编译包,硬件驱动及其他有用的软件包。在这里,是配置el4还是el5取决于你系统版本。除非你的硬件型号是discreet直接支持的,否则就必须配置config_generic.pl。
这是我配置的pl文件
之前安装过显卡驱动的,在这里可以删掉变量。要是没有安装的话,可以把新下载的显卡驱动拷贝到/bin/system_rpm/目录下,再把文件名填入对应的NVDIA_Driver驱动栏中。
下面,用文字编辑器修改DKU安装脚本(INSTALL_DKU):
找到这节:
#################################################################################
# validate that current workstation is supported by the DKU
#
$Supported = 0;
foreach $line (@WorkstationSupported)
……
把除了$Supported = 0之外的代码都删掉,然后把0改为1。最后应该是这样的:
#################################################################################
# validate that current workstation is supported by the DKU
#
$Supported = 1;
#################################################################################
存盘,退出。
#./INSTALL_DKU
如果运行不了的话,就设置一下权限
#chmod 777 INSTALL_DKU
#./INSTALL_DKU
安装tkinter–Tk图形用户界面工具包标准的Python接口,如果没装的话,安装Flame时会出错。 #p#page_title#e#
#rpm -Uvh tkinter-2.3.4-14.4.x86_64.rpm
要是出现依赖性问题导致无法安装的话,从网上随便找一个对应版本的就行。
准备重启,但在这之前,切记配置一下/etc/X11/xrog.conf文件,避免过高的分辨率导致无法进入图形界面。你也可以根据你的显卡把#号给删掉。
重启。再进入系统,已经变成Autodesk专门的KDE界面了。
安装Flame
解压,运行安装脚本
除非你的硬件被默认支持,否侧安装脚本都会报错,意思是flame不支持该硬件。
X7DWA(我机器的出错信息)
然后呢,用文字编辑器vi或是geidt修改install文档
找到supportedModels = [ "xw8400", "xw8600", "xw9400", "Z800" ]这行。拷贝刚才脚本反馈的出错代码,加入到supportedModels中。
supportedModels = [ "xw8400", "xw8600", "xw9400", "Z800" ,"X7DWA"]
再次运行应该硬件就应该被支持了。安装的时候,仔细留意一下脚本文件是否有报错的信息。我安装的时候经常出现缺这so或那个so的文件信息,真出现这种情况就到Google上搜索对应的安装包。下载安装后再新运行安装脚本。
一般来说,Flame在安装时会弹出两个对话框,一个是xorg的改动确定界面,一个是询问你是否为flame建一个默认的账户,要是你在安装的时候没有出现这两个对话框的话安装时肯定有问题的,这时就好好看看安装脚本缺哪些文件。
安装完成后,跟原来一样,也要注意对xorg.conf文件的正确配置。根据你的显卡把#号给删掉。
Section “ServerLayout”
# Screen 0 “Screen Lustre / EIZO CE24xW FX5800 SDI 1920×1200″ 0 0
# Screen 0 “Screen Lustre / EIZO CE24xW FX5600 SDI 1920×1200″ 0 0
# Screen 0 “Screen Sony SDM-P234 FX3000G 1920×1154″ 0 0
# Screen 0 “Screen Sony SDM-P234 / EIZO CE240W FX5500G 1920×1154″ 0 0
Screen 0 “Screen Sony SDM-P234 / EIZO CE240W FX4500G 1920×1200″ 0 0
# Screen 0 “Screen Sony SDM-P234 / EIZO CE240W FX5500G 1920×1200″ 0 0
# Screen 0 “Screen nVidia FX1700/FX3700 1280×1024″ 0 0
# Screen 0 “Screen Default 1920×1200 EDID” 0 0
# Screen 0 “Screen Default 1920×1200 NO-EDID” 0 0
重启后,这里还要做一些小的修改,打开/etc/X11/xorg.conf
检查自己的显卡是否有Overlay选项,没有的话,就手动加入,否则Flame是打不开的。
对比其他选项设置,应该还能开启很多显卡特性,但我对这个方面实在不是很熟悉,有经验的朋友可以尝试一下。
注册
#cd /usr/local/bin/
#dlhostid
屏幕上出显示类似的代码:
The host ID of this machine is “0012D2134B242″
The Discreet host ID of this machine is “DLHOST02=ADE74C0E6C1E809E7B54A228D1F17BCA”
打开CRACK目录下的DL_license.dat,根据你自己的ID替换HOSTID #p#page_title#e#
然后跳转windows系统,在命令行运行IFFS_keygen.exe DL_license.dat
回到linux,把生成的dat拷贝到/usr/local/flexlm/lincense/目录下
组建Framestore
我在安装的时候遇到很多困难,但在网上都没有找到具体的解决方案。更多朋友的一种论调是Flame没有Framestore根本无法安装,但特别有意思的是,我一开始居然是在移动硬盘上安装成功的。
刚一开始,我在sata硬盘上并没有安装成功,这让我开始怀疑flame在PC安装的可能性。我曾考虑是否是因为硬盘分区表存在问题导致Flame无法识别,于是我换了移动硬盘来尝试,一开始也没有成功,不过试过来试过去终于找到问题的原因。
Flame并没有大家想象得那样复杂、夸张。
如果你用的就是SCSI硬盘或是硬件被认作SCSI设备的话你可以参考第一种方法,不行的话就直接跳入第二种
1.#cd /usr/discreet/sw
#sw_config
根据你自己的想法配置Filesystem,配置好了点Save就行。这样Framestore就配置完成了。
2.如果你跟我一样,在SW_config下面什么都看不到的话,那就尝试架构标准文件系统(standard filesystem)。
所谓标准文件系统,就是IFFFS系列的软件可以读写操作系统能够挂载的设备或是文件系统。这也就是说,只要你想,U盘或者是Nfts文件系统都可以作为Flame的存储设备,关键的是看你系统是否支持挂载。
在官方文档中,Autodesk首推XFS 文件系统。XFS文件系统是SGI开发的高级日志文件系统。主要特性包括以下几点:
数据完全性 采用XFS文件系统,当意想不到的宕机发生后,首先,由于文件系统开启了日志功能,所以你磁盘上的文件不再会意外宕机而遭到破坏了。不论目前文件系统上存储的文件与数据有多少,文件系统都可以根据所记录的日志在很短的时间内迅速恢复磁盘文件内容。
传输特性 XFS文件系统采用优化算法,日志记录对整体文件操作影响非常小。XFS查询与分配存储空间非常快。XFS文件系统能连续提供快速的反应时间。有人曾经对xfs、JFS、Ext3、ReiserFS文件系统进行过测试,XFS文件文件系统的性能表现相当出众。
可扩展性 XFS 是一个全64-bit的文件系统,它可以支持上百万T字节的存储空间。对特大文件及小尺寸文件的支持都表现出众,支持特大数量的目录。最大可支持的文件大小为263 = 9 x 1018 = 9 exabytes,最大文件系统尺寸为18 exabytes。 xfs使用高的表结构(B+树),保证了文件系统可以快速搜索与快速空间分配。xfs能够持续提供高速操作,文件系统的性能不受目录中目录及文件数量的限制
传输带宽 XFS 能以接近裸设备I/O的性能存储数据。在单个文件系统的测试中,其吞吐量最高可达7GB每秒,对单个文件的读写操作,其吞吐量可达4GB每秒。
这里有个问题,官方的推荐是在直连硬盘阵列上做XFS文件系统,这样才能有较为令人满意的速度,而我对Linux系统也不能算非常熟练的掌握,并不了解ext3跟XFS在性能上的具体差别,另外还有一点XFS的文件配置较为复杂,所以,这里我提供XFS、ext3两种文件系统的挂载方法。
ext3文件系统
#fdisk -l | grep dev 显示硬盘设备命令,你要找类似/dev/sda/这样的分区编号,假设我们打算格式化硬盘/dev/sda/,那么
#fdisk /dev/sda
在出来的提示中键入n,显示新分区创建面板,你也可以键入d,删除已有分区
primary,1,其余的默认就可以
w 保存分区表修改并推出,格式化
#/sbin/mkfs.ext3 /dev/sda1
#/mkdir /stoneMedia
#/mount /dev/sda1 /stoneMedia
#gedit /etc/fstab 修改自动加载文件,把新格式化的硬盘设置成自动挂载,在fstab文件在加入下面一行
/dev/sda1 /stoneMedia ext3 defaults 0 0
保存,退出,重启
XFS文件系统
基本都差不多,主要是XFS文件多了一个逻辑卷的设置。
#fdisk -l |grep dev 显示硬盘设备命令,你要找类似/dev/sda/这样的分区编号,假设我们打算格式化硬盘/dev/sda/,那么 #p#page_title#e#
#fdisk /dev/sda 在出来的提示中键入n,显示新分区创建面板
键入P键创建primary分区,提示输入分区ID时,输入1。当提示输入起始柱面数时,按两下回车使用默认配置。
fdisk 提示重新出现。按T设置分区类型,输入8e创建Linux LVM分区。按w保存分区表,退出,执行格式化命令。
如果还有其他需要配置的硬盘就按照上面的步骤再重新做。
应用硬盘到LVM逻辑卷
重启后,首先确认硬盘被正确加载
#fdisk -l | grep dev
屏幕上将显示下面类似的文字信息
Disk /dev/sdf: 726.2 GB, 726247931904 bytes
/dev/sdg1 1 88294 709221523+8e Linux LVM
Disk /dev/sdg: 726.2 GB, 726247931904 bytes
/dev/sdh1 1 88294 709221523+8e Linux LVM
初始化为物理卷可以使用下面的命令
pvcreate <设备名称> 这里设备名称就是LVM硬盘分区设备名,例如,你有两个分区,范围从/dev/sdf到 /dev/sdg,
#pvcreate /dev/sdf1 /dev/sdg1
备注:如果有已经初始化的设备,你可以用pvremove删除。
确认物理卷被正确的初始化,
#pvscan -v
上面的例子显示如下信息:
Wiping cache of LVM-capable devices
Wiping internal VG cache
Walking through all physical volumes
PV /dev/sdf1 lvm2 [406.74 GB]
PV /dev/sdg1 lvm2 [406.74 GB]
Total: 2 [813.49 GB] / in use: 0 [0 ] / in no VG: 2 [813.49 GB]
创建卷组,你可以使用下面的命令
vgcreate vg00 <卷名称> 这里卷名称就是之前创建的物理卷名称。继续之前的例子,上一部创建的两个物理卷,
#vgcreate vg00 /dev/sdf1 /dev/sdg1
备注:你可以使用vgremove 命令来删除已经创建的卷组。
确认卷组被正确创建,查询”Free PE/Size”值
#vgdisplay -v
在输出的信息中找到”Free PE/Size”,并记下其数值。例如,下面的例子输出”Free PE/Size”值就是208252。
Free PE / Size 208252 / 5.28 TB
在卷组vg00上创建新的逻辑卷,使用下面的命令
lvcreate -l <Free PE值> -i <物理卷数量> -I 32 -n lvol1 vg00 这里,Free Pe值就是上面说明的数字,而物理卷数量就是有几块物理卷需要创建。接着之前的例子,
#lvcreate -l 208252 -i 2 -I 32 -n lvol1 vg00
终端输出创建成功的确认信息
Logical volume “lvol1” created
允许重启后自动加载
#chkconfig –add adsk_lvm
在LVM硬盘上创建XFS文件系统
运行mkfs.xfs命令查询你设备最佳优化值,
mkfs.xfs -d agcount =126 -f /dev/vg00/lvol1
出现下面类似的信息
meta-data =/dev/vg00/lvol1 isize=1024 agcount=126, agsize=1066667 blks
= sectsz=512 attr=0
data = bsize=4096 blocks=13400000, imaxpct=25
= sunit=16 swidth=64 blks, unwritten=1…
在上一步输出的诊断信息中,有几个值需要注意一下,第一行的agsize ,第四行的sunit和swidth。根据sunit和swidth值的不同,下面的情况我们分类讨论。 #p#page_title#e#
如果,sunit 和swidth两个值都为0,那就用agsize值乘文件系统block size 4096,这个例子来说就是1066667*4096=4369068032。新计算出来的值就是我们下一步优化所需的新agsize值。
如果,出现类似上面这样警告信息,计算方法便稍有不同
用文件系统block size 4096乘以agsize值,减去sunit值乘以4096的结果,
1050000*4096=4300800000 16(sunit)*4096=65536 4300800000-65536=4300734464 这个值便是我们优化需要的值
如果,sunit和swidth的值都不为0,但并没有警告信息出现,那就直接使用mkfs.xfs命令显示出来agsize值。
下面,用之前计算出来的new agsize值优化系统
mkfs.xfs -d agsize=<new agsize> -f /dev/vg00/lvol1
第二种情况就是这样:
#mkfs.xfs -d agsize=4369068032 -f /dev/vg00/lvol1
文件系统就创建成功了
设置挂载点
#mkdir /stoneMedia
#mount -av -t xfs -o rw,noatime,inode64 /dev/vg00/lvol1 /stoneMedia
文件系统被挂载在/stoneMedia目录下,你可以根据自己的需要设置挂载点。另外,这一步这可能碰到些问题,centos内置xfs感觉不是很好使,所以有需要的可以去网上下载需要的xfs文件系统软件包
确认硬件正确挂载,
#df -k
终端应该会显示类似下面的信息
/dev/mapper/vg00-lvol1
329963507 2176 329963289 1% /stoneMedia
设置自动挂载,用一个文字编辑器打开/etc/fstab,添加下面一行
/dev/vg00/lvol1 /stoneMedia xfs rw,noatime,inode64
重启后,你可以再用df -k命令检查一下设备是否正确挂载。
至此,XFS文件系统已经建立起来了。
设置标准文件系统
不管你是用ext3文件系统还是XFS文件系统,下面的步骤都是一样的。
创建媒体暂存文件夹
#df -h 显示已挂载设备
已挂载的设备便会以下面类似的信息显示
文件系统 容量 已用 可用 已用% 挂载点
/dev/sdb5 95G 17G 74G 19% /
tmpfs 7.9G 0 7.9G 0% /dev/shm
/dev/mapper/vg00-lvol1
94G 5.3M 94G 1% /stoneMedia
在已挂载的标准文件系统卷上创建媒体暂存目录
# mkdir -p /stoneMedia/chenxu/p7 在挂载点/stoneMedia目录下创建chenxu(主机的host名,你可以按你自己的来)及次级目录P7(这个是分区目录,默认P7)
设置根用户权限
# chown -R root:users /stoneMedia/chenxu/p7
设置可读可写通用权限
chmod -R 775 /stoneMedia/chenxu/p7
在stone+wire.cfg文件中定义标准文件系统分区
用文字编辑器打开/usr/discreet/sw/cfg/stone+wire.cfg
如果这是第一次编辑配置文件,打开的便是默认的配置文件。默认的配置文件是分区ID (partition ID)[Partition7]起头的。这样做的目的主要是说明最多有8个任意类型的分区可被配置,编号从0到7。为了避免冲突,分区ID最好是从7开始依次递减。
定义分区的卷名,这里定义为Media
Name=Media
定义加载路径
Path=/stoneMedia/chenxu/p7
这两点是Flame识别标准文件系统的主要部分。配置文件下面的选项主要是共享、文件压缩率及格式等专业参数的设置,留着默认就可以。如果有更进一步的配置需求可以参考官方的配置文档。
另外,默认配置文件需要配置的参数前都带有#,配置完记得删除。
保存,退出stone+wire.cfg文件。
这个是我的stone+wire.cfg文件,供大家参考。
配置sw_storage.cfg文件 #p#page_title#e#
#gedit /usr/discreet/sw/cfg/sw_framestore_map文字编辑器打开sw_framestore_map查看[FRAMESTORES]栏下的ID数字。如:
[FRAMESTORES]
FRAMESTORE=chenxu HADDR=192.168.1.102 ID=16
记住ID=16,再用文字编辑器打开/usr/discreet/sw/cfg/sw_storage.cfg,把ID改成16
[Framestore]
ID=16
保存,退出
重新启动后确认设备被正确识别
#/usr/discreet/sw/sw_df
stoneFS: could not open /dev/swfs: No such device or address
Partition Free Total %use iFree iTotal %use
7 95207 95212 0 N/A N/A N/A
分区被成功识别为7号分区
启动Flame
至此,Flame的安装全部完成。
一些小问题
Flame的安装基本就全部完成了。不过呢,我现在还不会使用,更深一步的运行测试也无法进行。目前已知的就是因为显示分辨率不足而导致画面显示不全。另外一个问题就是双显的设置,如果使用Twinview的方式显示的话,操作画面由于居中会被显示器的边劈成两半,特别不舒服。这点我不知道应该如何设置。再有的问题安装DKU后,光驱不能自动挂载,挂载的时候总报错,需要每次命令手动挂载。有解决的朋友可以分享一下自己的解决办法。