Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts/flt_properties.py')
-rw-r--r--release/scripts/flt_properties.py630
1 files changed, 0 insertions, 630 deletions
diff --git a/release/scripts/flt_properties.py b/release/scripts/flt_properties.py
deleted file mode 100644
index b9d93b5f52d..00000000000
--- a/release/scripts/flt_properties.py
+++ /dev/null
@@ -1,630 +0,0 @@
-# flt_properties.py. For setting default OpenFLight ID property types
-# Copyright (C) 2007 Blender Foundation
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-__bpydoc__ ="""\
-Utility functions and data defintions used by OpenFlight I/O and tool scripts. OpenFlight is a
-registered trademark of MultiGen-Paradigm, Inc.
-"""
-
-
-import struct
-
-bitsLSB = [2147483648]
-for i in xrange(31):
- bitsLSB.append(bitsLSB[-1]/2)
-bitsRSB = bitsLSB[:]
-bitsRSB.reverse()
-
-def pack_color(col):
- return struct.pack('>B',col[3]) + struct.pack('>B',col[2]) + struct.pack('>B',col[1]) + struct.pack('>B',col[0])
-
-def unpack_color(col):
- string = struct.pack('>I', col)
- r = struct.unpack('>B',string[3:4])
- g = struct.unpack('>B',string[2:3])
- b = struct.unpack('>B',string[1:2])
- a = struct.unpack('>B',string[0:1])
- return [r,g,b,a]
-
-def reverse_bits(len,num):
- bitbucket = list()
- rval = 0
-
- for i in xrange(len):
- if num & bitsRSB[i]:
- bitbucket.append(1)
- else:
- bitbucket.append(0)
-
- bitbucket.reverse()
-
- for i, bit in enumerate(bitbucket):
- if bit:
- rval |= bitsLSB[i]
-
- return rval
-
-
-opcode_name = { 0: 'db',
- 1: 'head',
- 2: 'grp',
- 4: 'obj',
- 5: 'face',
- 10: 'push',
- 11: 'pop',
- 14: 'dof',
- 19: 'push sub',
- 20: 'pop sub',
- 21: 'push ext',
- 22: 'pop ext',
- 23: 'cont',
- 31: 'comment',
- 32: 'color pal',
- 33: 'long id',
- 49: 'matrix',
- 50: 'vector',
- 52: 'multi-tex',
- 53: 'uv lst',
- 55: 'bsp',
- 60: 'rep',
- 61: 'inst ref',
- 62: 'inst def',
- 63: 'ext ref',
- 64: 'tex pal',
- 67: 'vert pal',
- 68: 'vert w col',
- 69: 'vert w col & norm',
- 70: 'vert w col, norm & uv',
- 71: 'vert w col & uv',
- 72: 'vert lst',
- 73: 'lod',
- 74: 'bndin box',
- 76: 'rot edge',
- 78: 'trans',
- 79: 'scl',
- 80: 'rot pnt',
- 81: 'rot and/or scale pnt',
- 82: 'put',
- 83: 'eyepoint & trackplane pal',
- 84: 'mesh',
- 85: 'local vert pool',
- 86: 'mesh prim',
- 87: 'road seg',
- 88: 'road zone',
- 89: 'morph vert lst',
- 90: 'link pal',
- 91: 'snd',
- 92: 'rd path',
- 93: 'snd pal',
- 94: 'gen matrix',
- 95: 'txt',
- 96: 'sw',
- 97: 'line styl pal',
- 98: 'clip reg',
- 100: 'ext',
- 101: 'light src',
- 102: 'light src pal',
- 103: 'reserved',
- 104: 'reserved',
- 105: 'bndin sph',
- 106: 'bndin cyl',
- 107: 'bndin hull',
- 108: 'bndin vol cntr',
- 109: 'bndin vol orient',
- 110: 'rsrvd',
- 111: 'light pnt',
- 112: 'tex map pal',
- 113: 'mat pal',
- 114: 'name tab',
- 115: 'cat',
- 116: 'cat dat',
- 117: 'rsrvd',
- 118: 'rsrvd',
- 119: 'bounding hist',
- 120: 'rsrvd',
- 121: 'rsrvd',
- 122: 'push attrib',
- 123: 'pop attrib',
- 124: 'rsrvd',
- 125: 'rsrvd',
- 126: 'curv',
- 127: 'road const',
- 128: 'light pnt appear pal',
- 129: 'light pnt anim pal',
- 130: 'indexed lp',
- 131: 'lp sys',
- 132: 'indx str',
- 133: 'shdr pal'}
-
-
-typecodes = ['c','C','s','S','i','I','f','d','t']
-
-FLT_GRP = 2
-FLT_OBJ = 4
-FLT_LOD = 73
-FLT_XRF = 63
-FLT_DOF = 14
-FLT_ILP = 111
-FLT_DB = 1
-FLT_FCE = 5
-
-#not actual opcodes
-FLT_NUL = 0
-FLT_EXP = -1
-
-#valid childtypes for each FLT node type
-FLT_CHILDTYPES = {
- FLT_GRP : [111,2,73,4,14,63],
- FLT_OBJ : [111],
- FLT_LOD : [111,2,73,4,14,63],
- FLT_XRF : [],
- FLT_DOF : [111,2,73,4,14,63],
- FLT_ILP : []
-}
-
-#List of nodes that can have faces as children
-FLT_FACETYPES = [
- FLT_GRP,
- FLT_OBJ,
- FLT_LOD,
- FLT_DOF
-]
-
-def write_prop(fw,type,value,length):
- if type == 'c':
- fw.write_char(value)
- elif type == 'C':
- fw.write_uchar(value)
- elif type == 's':
- fw.write_short(value)
- elif type == 'S':
- fw.write_ushort(value)
- elif type == 'i':
- fw.write_int(value)
- elif type == 'I':
- #NOTE!:
- #there is no unsigned int type in python, but we can only store signed ints in ID props
- newvalue = struct.unpack('>I', struct.pack('>i', value))[0]
- fw.write_uint(newvalue)
- elif type == 'd':
- fw.write_double(value)
- elif type == 'f':
- fw.write_float(value)
- elif type == 't':
- fw.write_string(value,length)
-
-def read_prop(fw,type,length):
- rval = None
- if type == 'c':
- rval = fw.read_char()
- elif type == 'C':
- rval = fw.read_uchar()
- elif type == 's':
- rval = fw.read_short()
- elif type == 'S':
- rval = fw.read_ushort()
- elif type == 'i':
- rval = fw.read_int()
- elif type == 'I':
- rval = fw.read_uint()
- elif type == 'd':
- rval = fw.read_double()
- elif type == 'f':
- rval = fw.read_float()
- elif type == 't':
- rval = fw.read_string(length)
- return rval
-
-
-FLTExt = {
- '3t8!id' : 'Ext',
- '4t8!sid' : '',
- '5c!reserved': 0,
- '6c!revision' : 0,
- '7S!recordcode' : 0
-}
-FLTGroup = {
- '3t8!id' : 'G',
- '4s!priority' : 0,
- '5s!reserved1' : 0,
- '6i!flags' : 0,
- '7s!special1' : 0,
- '8s!special2' : 0,
- '9s!significance' : 0,
- '10c!layer code' : 0,
- '11c!reserved2' : 0,
- '12i!reserved3' : 0,
- '13i!loop count' : 0,
- '14f!loop duration' : 0,
- '15f!last frame duration' : 0
-}
-FLTGroupDisplay = [5,11,12]
-
-FLTObject = {
- '3t8!id' : 'O',
- '4I!flags' : 0,
- '5s!priority' : 0,
- '6S!transp' : 0,
- '7s!SFX1' : 0,
- '8s!SFX2' : 0,
- '9s!significance' : 0,
- '10s!reserved' : 0
-}
-FLTObjectDisplay = [10]
-
-FLTLOD = {
- '3t8!id' : 'L',
- '4i!reserved' : 0,
- '5d!switch in' : 0.0,
- '6d!switch out' : 0.0,
- '7s!sfx ID1' : 0,
- '8s!sfx ID2' : 0,
- '9I!flags' : 0,
- '10d!X co' : 0.0,
- '11d!Y co' : 0.0,
- '12d!Z co' : 0.0,
- '13d!Transition' : 0.0,
- '14d!Sig Size' : 0.0
-}
-FLTLODDisplay = [4]
-
-FLTInlineLP = {
- '3t8!id' : 'Lp',
- '4s!smc' : 0,
- '5s!fid' : 0,
- '6C!back color: a' : 255,
- '7C!back color: b' : 255,
- '8C!back color: g' : 255,
- '9C!back color: r' : 255,
- '10i!display mode' : 0,
- '11f!intensity' : 1.0,
- '12f!back intensity' : 0.0,
- '13f!minimum defocus' : 0.0,
- '14f!maximum defocus' : 1.0,
- '15i!fading mode' : 0,
- '16i!fog punch mode' : 0,
- '17i!directional mode' : 1,
- '18i!range mode' : 0,
- '19f!min pixel size' : 1.0,
- '20f!max pixel size' : 1024,
- '21f!actual size' : 0.25,
- '22f!trans falloff pixel size' : 0.25,
- '23f!trans falloff exponent' : 1.0,
- '24f!trans falloff scalar' : 1.0,
- '25f!trans falloff clamp' : 1.0,
- '26f!fog scalar' : 0.25,
- '27f!fog intensity' : 1.0,
- '28f!size threshold' : 0.1,
- '29i!directionality' : 0,
- '30f!horizontal lobe angle' : 180.0,
- '31f!vertical lobe angle' : 180.0,
- '32f!lobe roll angle' : 0.0,
- '33f!dir falloff exponent' : 1.0,
- '34f!dir ambient intensity' : 0.1,
- '35f!anim period' : 2,
- '36f!anim phase' : 0,
- '37f!anim enabled' : 1.0,
- '38f!significance' : 0.0,
- '39i!draw order' : 0,
- '40I!flags' : 277004288,
- '41f!roti' : 0,
- '42f!rotj' : 0,
- '43f!rotk' : 1.0
-}
-
-FLTInlineLPDisplay = [35,36,37,41,42,43]
-
-FLTXRef = {
- '3t200!filename' : '', #we dont actually use this value on export
- '4i!reserved' : 0,
- '5I!flag' : -478150656,
- '6s!bbox' : 0,
- '7s!reserved' : 0
-}
-
-FLTXRefDisplay = [4,7,3]
-
-FLTDOF = {
- '3t8!id' : 'D',
- '4i!reserved' : 0,
- '5d!ORIGX' : 0.0,
- '6d!ORIGY' : 0.0,
- '7d!ORIGZ' : 0.0,
- '8d!XAXIS-X' : 10.0,
- '9d!XAXIS-Y' : 0.0,
- '10d!XAXIS-Z' : 0.0,
- '11d!XYPLANE-X' : 0.0,
- '12d!XYPLANE-Y' : 10.0,
- '13d!XZPLANE-Z' : 0.0,
- '14d!ZMIN' : 0.0,
- '15d!ZMAX' : 0.0,
- '16d!ZCUR' : 0.0,
- '17d!ZSTEP' : 0.0,
- '18d!YMIN' : 0.0,
- '19d!YMAX' : 0.0,
- '20d!YCUR' : 0.0,
- '21d!YSTEP' : 0.0,
- '22d!XMIN' : 0.0,
- '23d!XMAX' : 0.0,
- '24d!XCUR' : 0.0,
- '25d!XSTEP' : 0.0,
- '26d!PITCH-MIN' : 0.0,
- '27d!PITCH-MAX' : 0.0,
- '28d!PITCH-CUR' : 0.0,
- '29d!PITCH-STEP' : 0.0,
- '30d!ROLL-MIN' : 0.0,
- '31d!ROLL-MAX' : 0.0,
- '32d!ROLL-CUR' : 0.0,
- '33d!ROLL-STEP' : 0.0,
- '34d!YAW-MIN' : 0.0,
- '35d!YAW-MAX' : 0.0,
- '36d!YAW-CUR' : 0.0,
- '37d!YAW-STEP' : 0.0,
- '38d!ZSIZE-MIN' : 0.0,
- '39d!ZSIZE-MAX' : 0.0,
- '40d!ZSIZE-CUR' : 1.0,
- '41d!ZSIZE-STEP' : 0.0,
- '42d!YSIZE-MIN' : 0.0,
- '43d!YSIZE-MAX' : 0.0,
- '44d!YSIZE-CUR' : 1.0,
- '45d!YSIZE-STEP' : 0.0,
- '46d!XSIZE-MIN' : 0.0,
- '47d!XSIZE-MAX' : 0.0,
- '48d!XSIZE-CUR' : 1.0,
- '49d!XSIZE-STEP' : 0.0,
- '50I!FLAG' : 1897582,
- '51i!reserved2' : 0
-}
-
-FLTDOFDisplay = [4]
-
-FLTImage = {
- '3i!RealU Direction' : 0,
- '4i!RealV Direction' : 0,
- '5i!UpX' : 0,
- '6i!UpY' : 0,
- '7i!File Format' : 0,
- '8i!Min Filter' : 6,
- '9i!Mag Filter' : 1,
- '10i!Wrap' : 0,
- '11i!WrapU' : 0,
- '12i!WrapV' : 0,
- '13i!Modified' : 0,
- '14i!PivotX' : 0,
- '15i!PivotY' : 0,
- '16i!Enviorment' : 0,
- '17i!WhiteAlpha' : 0,
- '18i!reserved1' : 0,
- '19i!reserved2' : 0,
- '20i!reserved3' : 0,
- '21i!reserved4' : 0,
- '22i!reserved5' : 0,
- '23i!reserved6' : 0,
- '24i!reserved7' : 0,
- '25i!reserved8' : 0,
- '26i!reserved9' : 0,
- '27d!RealU Direction' : 0,
- '28d!RealV Direction' : 0,
- '29i!Origin' : 0,
- '30i!Kernel no.' : 0,
- '31i!Internal Format' : 0,
- '32i!External Format' : 0,
- '33i!MipMap Filter?' : 0,
- '34f!MMF1' : 0.0,
- '35f!MMF2' : 0.0,
- '36f!MMF3' : 0.0,
- '37f!MMF4' : 0.0,
- '38f!MMF5' : 0.0,
- '39f!MMF6' : 0.0,
- '40f!MMF7' : 0.0,
- '41f!MMF8' : 0.0,
- '42i!Tex CPs?' : 0,
- '43f!LOD0 CP' : 0.0,
- '44f!Scale0 CP' : 0.0,
- '45f!LOD1 CP' : 0.0,
- '46f!Scale1 CP' : 0.0,
- '47f!LOD2 CP' : 0.0,
- '48f!Scale2 CP' : 0.0,
- '49f!LOD3 CP' : 0.0,
- '50f!Scale3 CP' : 0.0,
- '51f!LOD4 CP' : 0.0,
- '52f!Scale4 CP' : 0.0,
- '53f!LOD5 CP' : 0.0,
- '54f!Scale5 CP' : 0.0,
- '55f!LOD6 CP' : 0.0,
- '56f!Scale6 CP' : 0.0,
- '57f!LOD7 CP' : 0.0,
- '58f!Scale7 CP' : 0.0,
- '59f!Control Clamp' : 0.0,
- '60i!Mag Alpha Filter' : 0,
- '61i!Mag Color Filter' : 0,
- '62f!reserved10' : 0,
- '63f!reserved11' : 0,
- '64f!reserved12' : 0,
- '65f!reserved13' : 0,
- '66f!reserved14' : 0,
- '67f!reserved15' : 0,
- '68f!reserved16' : 0,
- '69f!reserved17' : 0,
- '70f!reserved18' : 0,
- '71d!Lambert Central' : 0.0,
- '72d!Lambert Upper' : 0.0,
- '73d!Lambert Lower' : 0.0,
- '74d!reserved19' : 0,
- '75f!reserved20' : 0,
- '76f!reserved21' : 0,
- '77f!reserved22' : 0,
- '78f!reserved23' : 0,
- '79f!reserved24' : 0,
- '80i!Tex Detail?' : 0,
- '81i!Tex J' : 0,
- '82i!Tex K' : 0,
- '83i!Tex M' : 0,
- '84i!Tex N' : 0,
- '85i!Tex Scramble' : 0,
- '86i!Tex Tile?' : 0,
- '87f!Tex Tile LLU' : 0.0,
- '88f!Tex Tile LLV' : 0.0,
- '89f!Tex Tile URU' : 0.0,
- '90f!Tex Tile URV' : 0.0,
- '91i!Projection' : 0,
- '92i!Earth Model' : 0,
- '93i!reserved25' : 0,
- '94i!UTM Zone' : 0,
- '95i!Image Origin' : 0,
- '96i!GPU' : 0,
- '97i!reserved26' : 0,
- '98i!reserved27' : 0,
- '99i!GPU Hemi' : 0,
- '100i!reserved41' : 0,
- '101i!reserved42' : 0,
- '102i!reserved43' : 0,
- '103i!Cubemap' : 0,
- '104t588!reserved44' : '',
- '105t512!Comments' : '',
- '106i!reserved28' : 0,
- '107i!reserved29' : 0,
- '108i!reserved30' : 0,
- '109i!reserved31' : 0,
- '110i!reserved32' : 0,
- '111i!reserved33' : 0,
- '112i!reserved34' : 0,
- '113i!reserved35' : 0,
- '114i!reserved36' : 0,
- '115i!reserved37' : 0,
- '116i!reserved38' : 0,
- '117i!reserved39' : 0,
- '118i!reserved40' : 0,
- '119i!reserved45' : 0,
- '120i!Format Version' : 0,
- '121i!GPU num' : 0,
-}
-
-FLTImageDisplay = [18,19,29,21,22,23,24,25,26,62,63,64,65,66,67,68,69,70,74,75,76,77,78,79,93,97,98,102,114]
-
-FLTHeader = {
- '3t8!id' : 'db',
- '4i!version' : 1620,
- '5i!editversion' : 0,
- '6t32!date' : 0,
- '7s!NGID' : 0,
- '8s!NLID' : 0,
- '9s!NOID' : 0,
- '10s!NFID' : 0,
- '11s!UMULT' : 1,
- '12c!units' : 0,
- '13c!set white' : 0,
- '14I!flags' : 0x80000000,
- '15i!reserved1' : 0,
- '16i!reserved2' : 0,
- '17i!reserved3' : 0,
- '18i!reserved4' : 0,
- '19i!reserved5' : 0,
- '20i!reserved6' : 0,
- '21i!projection type' : 0,
- '22i!reserved7' : 0,
- '23i!reserved8' : 0,
- '24i!reserved9' : 0,
- '25i!reserved10' : 0,
- '26i!reserved11' : 0,
- '27i!reserved12' : 0,
- '28i!reserved13' : 0,
- '29s!NDID' : 0,
- '30s!vstore' : 1,
- '31i!origin' : 0,
- '32d!sw x' : 0,
- '33d!sw y' : 0,
- '34d!dx' : 0,
- '35d!dy' : 0,
- '36s!NSID' : 0,
- '37s!NPID' : 0,
- '38i!reserved14' : 0,
- '39i!reserved15' : 0,
- '40s!NCID' : 0,
- '41s!NTID' : 0,
- '42s!NBID' : 0,
- '43s!NWID' : 0,
- '44i!reserved14' : 0,
- '45d!sw lat' : 0,
- '46d!sw lon' : 0,
- '47d!ne lat' : 0,
- '48d!ne lon' : 0,
- '49d!origin lat' : 0,
- '50d!origin lon' : 0,
- '51d!lambert lat1' : 0,
- '52d!lambert lat2' : 0,
- '53s!NLSID' : 0,
- '54s!NLPID' : 0,
- '55s!NRID' : 0,
- '56s!NCATID' : 0,
- '57s!reserved15' : 0,
- '58s!reserved16' : 0,
- '59s!reserved17' : 0,
- '60s!reserved18' : 0,
- '61i!ellipsoid model' : 1,
- '62s!NAID' : 0,
- '63s!NCVID' : 0,
- '64s!utm zone' : 0,
- '65t6!reserved19' : 0,
- '66d!dz' : 0,
- '67d!radius' : 0,
- '68S!NMID' : 0,
- '69S!NLPSID' : 0,
- '70i!reserved20' : 0,
- '71d!major axis' : 0,
- '72d!minor axis' : 0,
-}
-
-FLT_Records = {
- 2 : FLTGroup,
- 4 : FLTObject,
- 73 : FLTLOD,
- 63 : FLTXRef,
- 14 : FLTDOF,
- 1 : FLTHeader,
- 111 : FLTInlineLP,
- 100 : FLTExt,
- 'Image' : FLTImage
-}
-
-def process_recordDefs():
- records = dict()
- for record in FLT_Records:
- props = dict()
- for prop in FLT_Records[record]:
- position = ''
- slice = 0
- (format,name) = prop.split('!')
- for i in format:
- if i not in typecodes:
- position = position + i
- slice = slice + 1
- else:
- break
- type = format[slice:]
- length = type[1:]
- if len(length) == 0:
- length = 1
- else:
- type = type[0]
- length = int(length)
-
- props[int(position)] = (type,length,prop)
- records[record] = props
- return records
-
-