Subversion Repositories Kolibri OS

Rev

Rev 2125 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. if lang eq ru
  2. capt db 'info 3ds версия 23.08.11',0 ;подпись окна
  3. else
  4. capt db 'info 3ds version 23.08.11',0 ;window caption
  5. end if
  6.  
  7. MAX_FILE_LEVEL equ 20 ;максимальный уровень вложенности блоков для анализа
  8. MAX_FILE_SIZE equ 150*0x400 ;максимальный размер файла (0x400=1Kb)
  9.  
  10. sizeof.block_3ds equ 9
  11.  
  12. macro block_3ds id,icon,par,caption
  13. {
  14.         dw id ;+0 идентификатор блока в файле 3ds
  15.         dw icon ;+2 номер иконки для блока
  16.         db par ;+4 содержит ли блок подблоки (0-да 1-нет)
  17.         dd caption+0 ;+5 описание блока
  18. }
  19.  
  20. CHUNK_MAIN equ 0x4D4D ; [-] сцена
  21. CHUNK_ambient_color       equ 0x2100 ; [-] ambient color
  22.   CHUNK_OBJMESH           equ 0x3D3D ; [-] набор объектов
  23.     CHUNK_OBJBLOCK        equ 0x4000 ; [+] объект
  24.       CHUNK_TRIMESH       equ 0x4100 ; [-] trimesh-объект
  25.         CHUNK_VERTLIST    equ 0x4110 ; [+] список вершин
  26.         CHUNK_FACELIST    equ 0x4120 ; [+] список граней
  27.         CHUNK_FACEMAT     equ 0x4130 ; [+] материалы граней
  28.         CHUNK_MAPLIST     equ 0x4140 ; [+] текстурные координаты
  29.         CHUNK_TRMATRIX    equ 0x4160 ; [+] матрица перевода
  30.       CHUNK_CAMERA        equ 0x4700 ; [+] объект-камера
  31.   CHUNK_MATERIAL          equ 0xAFFF ; [-] материал
  32.     CHUNK_MATNAME         equ 0xA000 ; [+] название материала
  33.     CHUNK_TEXTURE         equ 0xA200 ; [-] текстура материала
  34.       CHUNK_MAPFILE       equ 0xA300 ; [+] имя файла текстуры
  35.   CHUNK_KEYFRAMER         equ 0xB000 ; [-] информация об анимации
  36.   CHUNK_TRACKINFO         equ 0xB002 ; [-] поведение объекта
  37.     CHUNK_TRACKOBJNAME    equ 0xB010 ; [+] название этого объекта
  38.     CHUNK_TRACKPIVOT      equ 0xB013 ; [+] центр вращения объекта
  39.     CHUNK_TRACKPOS        equ 0xB020 ; [+] траектория объекта
  40.     CHUNK_TRACKROTATE     equ 0xB021 ; [+] траектория вращения объекта
  41.   CHUNK_TRACKCAMERA       equ 0xB003 ; [-] поведение камеры
  42.     CHUNK_TRACKFOV        equ 0xB023 ; [+] поведение fov камеры
  43.     CHUNK_TRACKROLL       equ 0xB024 ; [+] поведение roll камеры
  44.   CHUNK_TRACKCAMTGT       equ 0xB004 ; [-] поведение "цели" камеры
  45.  
  46. ;данные содержат лишь блоки, отмеченные плюсом, остальные блоки
  47. ; состоят лишь из подблоков
  48.  
  49. align 4
  50. type_bloks:
  51. block_3ds 0x0002,5,1,txt_0002
  52. block_3ds 0x3d3e,5,1 ; [+] mesh version
  53. block_3ds 0x0011,4,1,txt_0011
  54. block_3ds CHUNK_ambient_color,3,0 ; [-] ambient color
  55. block_3ds CHUNK_OBJMESH, 3,0,txt_3d3d
  56. block_3ds CHUNK_OBJBLOCK,3,1,txt_4000
  57. block_3ds CHUNK_TRIMESH, 3,0,txt_4100
  58. block_3ds CHUNK_VERTLIST,3,1,txt_4110
  59. block_3ds CHUNK_FACELIST,3,1,txt_4120
  60. block_3ds CHUNK_FACEMAT, 3,1,txt_4130
  61. block_3ds CHUNK_MAPLIST, 3,1,txt_4140
  62. block_3ds CHUNK_TRMATRIX,3,1,txt_4160
  63. block_3ds 0x4600,3,1,txt_4600
  64. block_3ds CHUNK_CAMERA,  3,1,txt_4700
  65. block_3ds CHUNK_MATERIAL,3,0,txt_afff
  66. block_3ds CHUNK_MATNAME, 3,1,txt_a000
  67. block_3ds 0xa010,4,0,txt_a010
  68. block_3ds 0xa020,4,0,txt_a020
  69. block_3ds 0xa030,4,0,txt_a030
  70. block_3ds CHUNK_TEXTURE, 3,0,txt_a200
  71. block_3ds CHUNK_MAPFILE, 6,1,txt_a300
  72. block_3ds CHUNK_KEYFRAMER,   3,0,txt_b000
  73. block_3ds CHUNK_TRACKINFO,   3,0,txt_b002
  74. block_3ds CHUNK_TRACKOBJNAME,3,1,txt_b010
  75. block_3ds CHUNK_TRACKPIVOT,  3,1,txt_b013
  76. block_3ds CHUNK_TRACKPOS,    3,1,txt_b020
  77. block_3ds CHUNK_TRACKROTATE, 3,1,txt_b021
  78. block_3ds CHUNK_TRACKCAMERA, 3,0,txt_b003
  79. block_3ds CHUNK_TRACKFOV,    3,1,txt_b023
  80. block_3ds CHUNK_TRACKROLL,   3,1,txt_b024
  81. block_3ds CHUNK_TRACKCAMTGT, 3,0,txt_b004
  82.  
  83. ;--- далее не во всех блоках смог найти описание на русском языке
  84. block_3ds 0x4150, 3,1,txt_4150
  85. block_3ds 0x4165, 3,1,txt_4165
  86. block_3ds 0x4610, 3,1,txt_4610
  87. block_3ds 0x4627, 3,1,txt_4627
  88. block_3ds 0x4630, 3,1,txt_4630
  89. block_3ds 0x4641, 3,1,txt_4641
  90. block_3ds 0x4650, 3,1,txt_4650
  91. block_3ds 0x4651, 3,1,txt_4651
  92. block_3ds 0x4652, 3,1,txt_4652
  93. block_3ds 0x4653, 3,1,txt_4653
  94. block_3ds 0x4656, 3,1,txt_4656
  95. block_3ds 0x4658, 3,1,txt_4658
  96. block_3ds 0x4620, 3,1,txt_4620
  97. block_3ds 0x4625, 3,1,txt_4625
  98. block_3ds 0x4659, 3,1,txt_4659
  99. block_3ds 0x465a, 3,1,txt_465a
  100. block_3ds 0x465b, 3,1,txt_465b
  101. block_3ds 0xa230, 3,1,txt_a230
  102. block_3ds 0xa220, 3,1,txt_a220
  103. block_3ds 0xa351, 3,1,txt_a351
  104. block_3ds 0xb007, 3,1,txt_b007
  105. block_3ds 0xb008, 3,1,txt_b008
  106. block_3ds 0xb022, 3,1,txt_b022
  107. block_3ds 0xb030, 3,1,txt_b030
  108. block_3ds 0xa040, 3,1,txt_a040
  109. block_3ds 0xa041, 3,1,txt_a041
  110. block_3ds 0xa050, 3,1,txt_a050
  111. block_3ds 0xa052, 3,1,txt_a052
  112. block_3ds 0xa053, 3,1,txt_a053
  113. block_3ds 0xa081, 3,1,txt_a081
  114. block_3ds 0xa083, 3,1,txt_a083
  115. block_3ds 0xa084, 3,1,txt_a084
  116. block_3ds 0xa085, 3,1,txt_a085
  117. block_3ds 0xa087, 3,1,txt_a087
  118. block_3ds 0xa088, 3,1,txt_a088
  119. block_3ds 0xa08a, 3,1,txt_a08a
  120. block_3ds 0xa08c, 3,1,txt_a08c
  121. block_3ds 0xa08e, 3,1,txt_a08e
  122. .end:
  123.  
  124. if lang eq ru
  125. txt_0002 db '3ds версия',0
  126. txt_0011 db 'Цвет rgb (байтовый формат)',0
  127. txt_3d3d db 'Набор объектов',0
  128. txt_4000 db 'Объект (с именем)',0
  129. txt_4100 db 'Треугольные сетки',0
  130. txt_4110 db 'Список вершин',0
  131. txt_4120 db 'Список граней',0
  132. txt_4130 db 'Материалы граней',0
  133. txt_4140 db 'Текстурные координаты',0
  134. txt_4160 db 'Матрица перевода',0
  135. txt_4600 db 'Свет',0
  136. txt_4700 db 'Камера',0
  137. txt_a000 db 'Название материала',0
  138. txt_a010 db 'Окружающий цвет',0
  139. txt_a020 db 'Диффузный цвет',0
  140. txt_a030 db 'Зеркальный цвет',0
  141. txt_a200 db 'Текстура материала 1',0
  142. txt_a300 db 'Имя файла текстуры',0
  143. txt_afff db 'Материал',0
  144. txt_b000 db 'Информация об анимации',0
  145. txt_b002 db 'Поведение объекта',0
  146. txt_b010 db 'Название объекта',0
  147. txt_b013 db 'Центр вращения объекта',0
  148. txt_b020 db 'Траектория движения',0
  149. txt_b021 db 'Траектория вращения',0
  150. txt_b003 db 'Поведение камеры',0
  151. txt_b023 db 'Поведение fov камеры',0
  152. txt_b024 db 'Поведение roll камеры',0
  153. txt_b004 db 'Поведение "цели" камеры',0
  154.  
  155. ;--- далее не во всех блоках смог найти описание на русском языке
  156. txt_4150 db 'Smoothing group list',0
  157. txt_4165 db 'Object color in editor',0
  158. txt_4610 db 'Направленный свет',0
  159. txt_4627 db 'Spot raytrace',0
  160. txt_4630 db 'Light shadowed',0
  161. txt_4641 db 'Spot shadow map',0
  162. txt_4650 db 'Spot show cone',0
  163. txt_4651 db 'Spot is rectangular',0
  164. txt_4652 db 'Spot overshoot',0
  165. txt_4653 db 'Spot map',0
  166. txt_4656 db 'Spot roll',0
  167. txt_4658 db 'Spot ray trace bias',0
  168. txt_4620 db 'Light off',0
  169. txt_4625 db 'Attenuation on',0
  170. txt_4659 db 'Range start',0
  171. txt_465a db 'Range end',0
  172. txt_465b db 'Multiplier',0
  173. txt_a230 db 'Разметка рельефа',0
  174. txt_a220 db 'Разметка отражения',0
  175. txt_a351 db 'Параметры разметки',0
  176. txt_b007 db 'Информация о направленом освещении',0
  177. txt_b008 db 'Кадры (начальный и конечный)',0
  178. txt_b022 db 'Масштабирование',0
  179. txt_b030 db 'Позиция в иерархии',0
  180. txt_a040 db 'Shininess percent',0
  181. txt_a041 db 'Shininess strength percent',0
  182. txt_a050 db 'Transparency percent',0
  183. txt_a052 db 'Transparency falloff percent',0
  184. txt_a053 db 'Reflection blur percent',0
  185. txt_a081 db '2 sided',0
  186. txt_a083 db 'Add trans',0
  187. txt_a084 db 'Self illum',0
  188. txt_a085 db 'Wire frame on',0
  189. txt_a087 db 'Wire thickness',0
  190. txt_a088 db 'Face map',0
  191. txt_a08a db 'In tranc',0
  192. txt_a08c db 'Soften',0
  193. txt_a08e db 'Wire in units',0
  194. else
  195.  
  196. txt_0002 db '3ds version',0
  197. txt_0011 db 'Color rgb (byte format)',0
  198. txt_3d3d db 'Editor chunk',0
  199. txt_4000 db 'Object (with name)',0
  200. txt_4100 db 'Triangular mesh',0
  201. txt_4110 db 'Vertices list',0
  202. txt_4120 db 'Faces description',0
  203. txt_4130 db 'Faces material',0
  204. txt_4140 db 'Mapping coordinates list',0
  205. txt_4160 db 'Local coordinate system',0
  206. txt_4600 db 'Light',0
  207. txt_4700 db 'Camera',0
  208. txt_a000 db 'Material name',0
  209. txt_a010 db 'Ambient color',0
  210. txt_a020 db 'Diffuse color',0
  211. txt_a030 db 'Specular color',0
  212. txt_a200 db 'Texture map 1',0
  213. txt_a300 db 'Mapping filename',0
  214. txt_afff db 'Meterial',0
  215. txt_b000 db 'Keyframer',0
  216. txt_b002 db 'Mesh information',0
  217. txt_b010 db 'Object name',0
  218. txt_b013 db 'Object pivot point',0
  219. txt_b020 db 'Position track',0
  220. txt_b021 db 'Rotation track',0
  221. txt_b003 db 'Camera information',0
  222. txt_b023 db 'Fov track',0
  223. txt_b024 db 'Roll track',0
  224. txt_b004 db 'Camera target information',0
  225.  
  226. ;---
  227. txt_4150 db 'Smoothing group list',0
  228. txt_4165 db 'Object color in editor',0
  229. txt_4610 db 'Spotlight',0
  230. txt_4627 db 'Spot raytrace',0
  231. txt_4630 db 'Light shadowed',0
  232. txt_4641 db 'Spot shadow map',0
  233. txt_4650 db 'Spot show cone',0
  234. txt_4651 db 'Spot is rectangular',0
  235. txt_4652 db 'Spot overshoot',0
  236. txt_4653 db 'Spot map',0
  237. txt_4656 db 'Spot roll',0
  238. txt_4658 db 'Spot ray trace bias',0
  239. txt_4620 db 'Light off',0
  240. txt_4625 db 'Attenuation on',0
  241. txt_4659 db 'Range start',0
  242. txt_465a db 'Range end',0
  243. txt_465b db 'Multiplier',0
  244. txt_a230 db 'Bump map',0
  245. txt_a220 db 'Reflection map',0
  246. txt_a351 db 'Mapping parameters',0
  247. txt_b007 db 'Spot light information',0
  248. txt_b008 db 'Frames (Start and End)',0
  249. txt_b022 db 'Scale track',0
  250. txt_b030 db 'Hierarchy position',0
  251. txt_a040 db 'Shininess percent',0
  252. txt_a041 db 'Shininess strength percent',0
  253. txt_a050 db 'Transparency percent',0
  254. txt_a052 db 'Transparency falloff percent',0
  255. txt_a053 db 'Reflection blur percent',0
  256. txt_a081 db '2 sided',0
  257. txt_a083 db 'Add trans',0
  258. txt_a084 db 'Self illum',0
  259. txt_a085 db 'Wire frame on',0
  260. txt_a087 db 'Wire thickness',0
  261. txt_a088 db 'Face map',0
  262. txt_a08a db 'In tranc',0
  263. txt_a08c db 'Soften',0
  264. txt_a08e db 'Wire in units',0
  265. end if
  266.  
  267. if lang eq ru
  268. txt_open_3ds db 'Открыт файл:',0
  269. txt_no_3ds db 'Открытый файл не в формате *.3ds',0
  270. txt_3ds_big_file db 'Размер файла больше MAX_FILE_SIZE',0
  271. txt_3ds_err_sizes db 'Возможно файл поврежден',0
  272. txt_3ds_offs:
  273.         db 'Смещение: '
  274.         .dig: rb 8
  275.         db 0
  276. else
  277. txt_open_3ds db 'Open file:',0
  278. txt_no_3ds db 'Открытый файл не в формате *.3ds',0
  279. txt_3ds_big_file db 'Размер файла больше MAX_FILE_SIZE',0
  280. txt_3ds_err_sizes db 'Возможно файл поврежден',0
  281. txt_3ds_offs:
  282.         db 'Offset: '
  283.         .dig: rb 8
  284.         db 0
  285. end if