Subversion Repositories Kolibri OS

Rev

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

  1. ;
  2. ; §¤¥áì á®¡à ­ë ¤ ­­ë¥ ¯® ¡«®ª ¬ *.3ds
  3. ;
  4.  
  5. MAX_FILE_LEVEL equ 20 ;¬ ªá¨¬ «ì­ë© ã஢¥­ì ¢«®¦¥­­®á⨠¡«®ª®¢ ¤«ï  ­ «¨§ 
  6.  
  7. sizeof.block_3ds equ 9
  8. can_save db 0 ;¨§¬¥­ï«áï «¨ ä ©«
  9.  
  10. macro block_3ds id,icon,par,caption
  11. {
  12.         dw id ;+0 ¨¤¥­â¨ä¨ª â®à ¡«®ª  ¢ ä ©«¥ 3ds
  13.         dw icon ;+2 ­®¬¥à ¨ª®­ª¨ ¤«ï ¡«®ª 
  14.         db par ;+4 ᮤ¥à¦¨â «¨ ¡«®ª ¯®¤¡«®ª¨ (0-¤  1-­¥â)
  15.         dd caption+0 ;+5 ®¯¨á ­¨¥ ¡«®ª 
  16. }
  17.  
  18. CHUNK_MAIN equ 0x4D4D ; [-] á業 
  19. CHUNK_ambient_color       equ 0x2100 ; [-] ambient color
  20.   CHUNK_OBJMESH           equ 0x3D3D ; [-] ­ ¡®à ®¡ê¥ªâ®¢
  21.     CHUNK_OBJBLOCK        equ 0x4000 ; [+] ®¡ê¥ªâ
  22.       CHUNK_TRIMESH       equ 0x4100 ; [-] trimesh-®¡ê¥ªâ
  23.         CHUNK_VERTLIST    equ 0x4110 ; [+] ᯨ᮪ ¢¥à設
  24.         CHUNK_FACELIST    equ 0x4120 ; [+] ᯨ᮪ £à ­¥©
  25.         CHUNK_FACEMAT     equ 0x4130 ; [+] ¬ â¥à¨ «ë £à ­¥©
  26.         CHUNK_MAPLIST     equ 0x4140 ; [+] ⥪áâãà­ë¥ ª®®à¤¨­ âë
  27.         CHUNK_TRMATRIX    equ 0x4160 ; [+] ¬ âà¨æ  ¯¥à¥¢®¤ 
  28.       CHUNK_CAMERA        equ 0x4700 ; [+] ®¡ê¥ªâ-ª ¬¥à 
  29.   CHUNK_MATERIAL          equ 0xAFFF ; [-] ¬ â¥à¨ «
  30.     CHUNK_MATNAME         equ 0xA000 ; [+] ­ §¢ ­¨¥ ¬ â¥à¨ « 
  31.     CHUNK_TEXTURE         equ 0xA200 ; [-] ⥪áâãà  ¬ â¥à¨ « 
  32.       CHUNK_MAPFILE       equ 0xA300 ; [+] ¨¬ï ä ©«  ⥪áâãàë
  33.   CHUNK_KEYFRAMER         equ 0xB000 ; [-] ¨­ä®à¬ æ¨ï ®¡  ­¨¬ æ¨¨
  34.   CHUNK_TRACKINFO         equ 0xB002 ; [-] ¯®¢¥¤¥­¨¥ ®¡ê¥ªâ 
  35.     CHUNK_TRACKOBJNAME    equ 0xB010 ; [+] ­ §¢ ­¨¥ í⮣® ®¡ê¥ªâ 
  36.     CHUNK_TRACKPIVOT      equ 0xB013 ; [+] 業âà ¢à é¥­¨ï ®¡ê¥ªâ 
  37.     CHUNK_TRACKPOS        equ 0xB020 ; [+] âà ¥ªâ®à¨ï ®¡ê¥ªâ 
  38.     CHUNK_TRACKROTATE     equ 0xB021 ; [+] âà ¥ªâ®à¨ï ¢à é¥­¨ï ®¡ê¥ªâ 
  39.   CHUNK_TRACKCAMERA       equ 0xB003 ; [-] ¯®¢¥¤¥­¨¥ ª ¬¥àë
  40.     CHUNK_TRACKFOV        equ 0xB023 ; [+] ¯®¢¥¤¥­¨¥ fov ª ¬¥àë
  41.     CHUNK_TRACKROLL       equ 0xB024 ; [+] ¯®¢¥¤¥­¨¥ roll ª ¬¥àë
  42.   CHUNK_TRACKCAMTGT       equ 0xB004 ; [-] ¯®¢¥¤¥­¨¥ "楫¨" ª ¬¥àë
  43.  
  44. ;¤ ­­ë¥ ᮤ¥à¦ â «¨èì ¡«®ª¨, ®â¬¥ç¥­­ë¥ ¯«îᮬ, ®áâ «ì­ë¥ ¡«®ª¨
  45. ; á®áâ®ïâ «¨èì ¨§ ¯®¤¡«®ª®¢
  46.  
  47. align 4
  48. type_bloks:
  49. block_3ds 0x0002,5,1,txt_0002
  50. block_3ds 0x3d3e,5,1 ; [+] mesh version
  51. block_3ds 0x0011,4,1,txt_0011
  52. block_3ds 0x0100,3,1,txt_0100
  53. block_3ds CHUNK_ambient_color,3,0,txt_2100 ; [-] ambient color
  54. block_3ds CHUNK_OBJMESH, 3,0,txt_3d3d
  55. block_3ds CHUNK_OBJBLOCK,3,1,txt_4000
  56. block_3ds CHUNK_TRIMESH, 3,0,txt_4100
  57. block_3ds CHUNK_VERTLIST,3,1,txt_4110
  58. block_3ds CHUNK_FACELIST,3,1,txt_4120
  59. block_3ds CHUNK_FACEMAT, 3,1,txt_4130
  60. block_3ds CHUNK_MAPLIST, 3,1,txt_4140
  61. block_3ds CHUNK_TRMATRIX,3,1,txt_4160
  62. block_3ds 0x4600,3,1,txt_4600
  63. block_3ds CHUNK_CAMERA,  3,1,txt_4700
  64. block_3ds CHUNK_MATERIAL,3,0,txt_afff
  65. block_3ds CHUNK_MATNAME, 3,1,txt_a000
  66. block_3ds 0xa010,4,0,txt_a010
  67. block_3ds 0xa020,4,0,txt_a020
  68. block_3ds 0xa030,4,0,txt_a030
  69. block_3ds 0xa100,5,1,txt_a100
  70. block_3ds CHUNK_TEXTURE, 3,0,txt_a200
  71. block_3ds CHUNK_MAPFILE, 6,1,txt_a300
  72. block_3ds CHUNK_KEYFRAMER,   7,0,txt_b000
  73. block_3ds CHUNK_TRACKINFO,   3,0,txt_b002
  74. block_3ds CHUNK_TRACKOBJNAME,3,1,txt_b010
  75. block_3ds 0xb011,3,1,txt_b011
  76. block_3ds CHUNK_TRACKPIVOT,  3,1,txt_b013
  77. block_3ds 0xb014,3,1,txt_b014
  78. block_3ds CHUNK_TRACKPOS,    3,1,txt_b020
  79. block_3ds CHUNK_TRACKROTATE, 3,1,txt_b021
  80. block_3ds CHUNK_TRACKCAMERA, 7,0,txt_b003
  81. block_3ds CHUNK_TRACKFOV,    7,1,txt_b023
  82. block_3ds CHUNK_TRACKROLL,   7,1,txt_b024
  83. block_3ds CHUNK_TRACKCAMTGT, 7,0,txt_b004
  84.  
  85. ;--- ¤ «¥¥ ­¥ ¢® ¢á¥å ¡«®ª å ᬮ£ ­ ©â¨ ®¯¨á ­¨¥ ­  àãá᪮¬ ï§ëª¥
  86. block_3ds 0x4111, 3,1,txt_4111
  87. block_3ds 0x4150, 3,1,txt_4150
  88. block_3ds 0x4165, 3,1,txt_4165
  89. block_3ds 0x4610, 3,1,txt_4610
  90. block_3ds 0x4627, 3,1,txt_4627
  91. block_3ds 0x4630, 3,1,txt_4630
  92. block_3ds 0x4641, 3,1,txt_4641
  93. block_3ds 0x4650, 3,1,txt_4650
  94. block_3ds 0x4651, 3,1,txt_4651
  95. block_3ds 0x4652, 3,1,txt_4652
  96. block_3ds 0x4653, 3,1,txt_4653
  97. block_3ds 0x4656, 3,1,txt_4656
  98. block_3ds 0x4658, 3,1,txt_4658
  99. block_3ds 0x4620, 3,1,txt_4620
  100. block_3ds 0x4625, 3,1,txt_4625
  101. block_3ds 0x4659, 3,1,txt_4659
  102. block_3ds 0x465a, 3,1,txt_465a
  103. block_3ds 0x465b, 3,1,txt_465b
  104. block_3ds 0xa230, 3,1,txt_a230
  105. block_3ds 0xa220, 3,1,txt_a220
  106. block_3ds 0xa351, 3,1,txt_a351
  107. block_3ds 0xb007, 3,1,txt_b007
  108. block_3ds 0xb008, 3,1,txt_b008
  109. block_3ds 0xb022, 3,1,txt_b022
  110. block_3ds 0xb030, 3,1,txt_b030
  111. block_3ds 0xa040, 3,1,txt_a040
  112. block_3ds 0xa041, 3,1,txt_a041
  113. block_3ds 0xa050, 3,1,txt_a050
  114. block_3ds 0xa052, 3,1,txt_a052
  115. block_3ds 0xa053, 3,1,txt_a053
  116. block_3ds 0xa081, 3,1,txt_a081
  117. block_3ds 0xa083, 3,1,txt_a083
  118. block_3ds 0xa084, 3,1,txt_a084
  119. block_3ds 0xa085, 3,1,txt_a085
  120. block_3ds 0xa087, 3,1,txt_a087
  121. block_3ds 0xa088, 3,1,txt_a088
  122. block_3ds 0xa08a, 3,1,txt_a08a
  123. block_3ds 0xa08c, 3,1,txt_a08c
  124. block_3ds 0xa08e, 3,1,txt_a08e
  125. .end:
  126.  
  127. if lang eq ru
  128. txt_0002 db '3ds ¢¥àá¨ï',0
  129. txt_0011 db '–¢¥â rgb (¡ ©â®¢ë© ä®à¬ â)',0
  130. ;txt_0012 db 'LIN_COLOR_24',0
  131. ;txt_0030 db 'Percentage value (int)',0
  132. ;txt_0031 db 'Percentage value (float)',0
  133. txt_0100 db 'Master scale',0
  134. txt_2100 db '–¢¥â ®ªà㦠î饩 á।ë',0
  135. txt_3d3d db ' ¡®à ®¡ê¥ªâ®¢',0
  136. txt_4000 db 'Ž¡ê¥ªâ (á ¨¬¥­¥¬)',0
  137. txt_4100 db '’à¥ã£®«ì­ë¥ á¥âª¨',0
  138. txt_4110 db '‘¯¨á®ª ¢¥à設',0
  139. txt_4120 db '‘¯¨á®ª £à ­¥©',0
  140. txt_4130 db 'Œ â¥à¨ «ë £à ­¥©',0
  141. txt_4140 db '’¥ªáâãà­ë¥ ª®®à¤¨­ âë',0
  142. txt_4160 db 'Œ âà¨æ  ¯¥à¥¢®¤ ',0
  143. txt_4600 db '‘¢¥â',0
  144. txt_4700 db 'Š ¬¥à ',0
  145. txt_a000 db ' §¢ ­¨¥ ¬ â¥à¨ « ',0
  146. txt_a010 db 'Žªà㦠î騩 梥â',0
  147. txt_a020 db '„¨ääã§­ë© æ¢¥â',0
  148. txt_a030 db '‡¥àª «ì­ë© 梥â',0
  149. txt_a100 db '’¨¯ ¬ â¥à¨ «  [1=flat 2=gouraud 3=phong 4=metal]',0
  150. txt_a200 db '’¥ªáâãà  ¬ â¥à¨ «  1',0
  151. txt_a300 db 'ˆ¬ï ä ©«  ⥪áâãàë',0
  152. ;txt_a353 db 'MAT_MAP_TEXBLUR',0
  153. txt_afff db 'Œ â¥à¨ «',0
  154. txt_b000 db 'ˆ­ä®à¬ æ¨ï ®¡  ­¨¬ æ¨¨',0
  155. txt_b002 db '®¢¥¤¥­¨¥ ®¡ê¥ªâ ',0
  156. ;txt_b009 db 'KFCURTIME',0
  157. ;txt_b00a db 'KFHDR',0
  158. txt_b010 db ' §¢ ­¨¥ ®¡ê¥ªâ ',0
  159. txt_b011 db 'ˆ¬ï íª§¥¬¯«ïà ',0
  160. txt_b013 db '–¥­âà ¢à é¥­¨ï ®¡ê¥ªâ ',0
  161. txt_b014 db 'Bound box',0
  162. txt_b020 db '’à ¥ªâ®à¨ï ¤¢¨¦¥­¨ï',0
  163. txt_b021 db '’à ¥ªâ®à¨ï ¢à é¥­¨ï',0
  164. txt_b003 db '®¢¥¤¥­¨¥ ª ¬¥àë',0
  165. txt_b023 db '®¢¥¤¥­¨¥ fov ª ¬¥àë',0
  166. txt_b024 db '®¢¥¤¥­¨¥ roll ª ¬¥àë',0
  167. txt_b004 db '®¢¥¤¥­¨¥ "楫¨" ª ¬¥àë',0
  168.  
  169. ;--- ¤ «¥¥ ­¥ ¢® ¢á¥å ¡«®ª å ᬮ£ ­ ©â¨ ®¯¨á ­¨¥ ­  àãá᪮¬ ï§ëª¥
  170. txt_4111 db '”« £¨ ¢¥à設',0
  171. txt_4150 db 'Smoothing group list',0
  172. txt_4165 db 'Object color in editor',0
  173. txt_4610 db ' ¯à ¢«¥­­ë© ᢥâ',0
  174. txt_4627 db 'Spot raytrace',0
  175. txt_4630 db 'Light shadowed',0
  176. txt_4641 db 'Spot shadow map',0
  177. txt_4650 db 'Spot show cone',0
  178. txt_4651 db 'Spot is rectangular',0
  179. txt_4652 db 'Spot overshoot',0
  180. txt_4653 db 'Spot map',0
  181. txt_4656 db 'Spot roll',0
  182. txt_4658 db 'Spot ray trace bias',0
  183. txt_4620 db 'Light off',0
  184. txt_4625 db 'Attenuation on',0
  185. txt_4659 db 'Range start',0
  186. txt_465a db 'Range end',0
  187. txt_465b db 'Multiplier',0
  188. txt_a230 db ' §¬¥âª  ५ì¥ä ',0
  189. txt_a220 db ' §¬¥âª  ®âà ¦¥­¨ï',0
  190. txt_a351 db ' à ¬¥âàë à §¬¥âª¨',0
  191. txt_b007 db 'ˆ­ä®à¬ æ¨ï ® ­ ¯à ¢«¥­®¬ ®á¢¥é¥­¨¨',0
  192. txt_b008 db 'Š ¤àë (­ ç «ì­ë© ¨ ª®­¥ç­ë©)',0
  193. txt_b022 db 'Œ áèâ ¡¨à®¢ ­¨¥',0
  194. txt_b030 db '®§¨æ¨ï ¢ ¨¥à à娨',0
  195. txt_a040 db 'Shininess percent',0
  196. txt_a041 db 'Shininess strength percent',0
  197. txt_a050 db 'Transparency percent',0
  198. txt_a052 db 'Transparency falloff percent',0
  199. txt_a053 db 'Reflection blur percent',0
  200. txt_a081 db '2 sided',0
  201. txt_a083 db 'Add trans',0
  202. txt_a084 db 'Self illum',0
  203. txt_a085 db 'Wire frame on',0
  204. txt_a087 db 'Wire thickness',0
  205. txt_a088 db 'Face map',0
  206. txt_a08a db 'In tranc',0
  207. txt_a08c db 'Soften',0
  208. txt_a08e db 'Wire in units',0
  209.  
  210. txt_not_delete db '¥ ¬®£ã 㤠«¨âì ¢ë¡à ­­ë© ¡«®ª. Ž­ § é¨é¥­.',0
  211. else
  212.  
  213. txt_0002 db '3ds version',0
  214. txt_0011 db 'Color rgb (byte format)',0
  215. txt_0100 db 'Master scale',0
  216. txt_2100 db 'Ambient color',0
  217. txt_3d3d db 'Editor chunk',0
  218. txt_4000 db 'Object (with name)',0
  219. txt_4100 db 'Triangular mesh',0
  220. txt_4110 db 'Vertices list',0
  221. txt_4120 db 'Faces description',0
  222. txt_4130 db 'Faces material',0
  223. txt_4140 db 'Mapping coordinates list',0
  224. txt_4160 db 'Local coordinate system',0
  225. txt_4600 db 'Light',0
  226. txt_4700 db 'Camera',0
  227. txt_a000 db 'Material name',0
  228. txt_a010 db 'Ambient color',0
  229. txt_a020 db 'Diffuse color',0
  230. txt_a030 db 'Specular color',0
  231. txt_a100 db 'Material type [1=flat 2=gouraud 3=phong 4=metal]',0
  232. txt_a200 db 'Texture map 1',0
  233. txt_a300 db 'Mapping filename',0
  234. txt_afff db 'Meterial',0
  235. txt_b000 db 'Keyframer',0
  236. txt_b002 db 'Mesh information',0
  237. txt_b010 db 'Object name',0
  238. txt_b011 db 'Instance name',0
  239. txt_b013 db 'Object pivot point',0
  240. txt_b014 db 'Bound box',0
  241. txt_b020 db 'Position track',0
  242. txt_b021 db 'Rotation track',0
  243. txt_b003 db 'Camera information',0
  244. txt_b023 db 'Fov track',0
  245. txt_b024 db 'Roll track',0
  246. txt_b004 db 'Camera target information',0
  247.  
  248. ;---
  249. txt_4111 db 'Vertex flags',0
  250. txt_4150 db 'Smoothing group list',0
  251. txt_4165 db 'Object color in editor',0
  252. txt_4610 db 'Spotlight',0
  253. txt_4627 db 'Spot raytrace',0
  254. txt_4630 db 'Light shadowed',0
  255. txt_4641 db 'Spot shadow map',0
  256. txt_4650 db 'Spot show cone',0
  257. txt_4651 db 'Spot is rectangular',0
  258. txt_4652 db 'Spot overshoot',0
  259. txt_4653 db 'Spot map',0
  260. txt_4656 db 'Spot roll',0
  261. txt_4658 db 'Spot ray trace bias',0
  262. txt_4620 db 'Light off',0
  263. txt_4625 db 'Attenuation on',0
  264. txt_4659 db 'Range start',0
  265. txt_465a db 'Range end',0
  266. txt_465b db 'Multiplier',0
  267. txt_a230 db 'Bump map',0
  268. txt_a220 db 'Reflection map',0
  269. txt_a351 db 'Mapping parameters',0
  270. txt_b007 db 'Spot light information',0
  271. txt_b008 db 'Frames (Start and End)',0
  272. txt_b022 db 'Scale track',0
  273. txt_b030 db 'Hierarchy position',0
  274. txt_a040 db 'Shininess percent',0
  275. txt_a041 db 'Shininess strength percent',0
  276. txt_a050 db 'Transparency percent',0
  277. txt_a052 db 'Transparency falloff percent',0
  278. txt_a053 db 'Reflection blur percent',0
  279. txt_a081 db '2 sided',0
  280. txt_a083 db 'Add trans',0
  281. txt_a084 db 'Self illum',0
  282. txt_a085 db 'Wire frame on',0
  283. txt_a087 db 'Wire thickness',0
  284. txt_a088 db 'Face map',0
  285. txt_a08a db 'In tranc',0
  286. txt_a08c db 'Soften',0
  287. txt_a08e db 'Wire in units',0
  288.  
  289. txt_not_delete db 'I can not delete the selected chunk. It is protected.',0
  290. end if
  291.  
  292. if lang eq ru
  293. txt_open_3ds db 'Žâªàëâ ä ©«:',0
  294. txt_no_3ds db 'Žâªàëâë© ä ©« ­¥ ¢ ä®à¬ â¥ *.3ds',0
  295. txt_3ds_err_sizes db '‚®§¬®¦­® ä ©« ¯®¢à¥¦¤¥­',0
  296. txt_count db 'Š®«¨ç¥á⢮',0
  297. txt_3ds_offs:
  298.         db '‘¬¥é¥­¨¥: '
  299.         .dig: rb 8
  300.         db '   §¬¥à: '
  301.         .siz: rb 8
  302.         db 0
  303. else
  304. txt_open_3ds db 'Open file:',0
  305. txt_no_3ds db 'Žâªàëâë© ä ©« ­¥ ¢ ä®à¬ â¥ *.3ds',0
  306. txt_3ds_err_sizes db '‚®§¬®¦­® ä ©« ¯®¢à¥¦¤¥­',0
  307. txt_count db 'Count',0
  308. txt_3ds_offs:
  309.         db 'Offset: '
  310.         .dig: rb 8
  311.         db '  Size: '
  312.         .siz: rb 8
  313.         db 0
  314. end if