Subversion Repositories Kolibri OS

Rev

Rev 9512 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
9740 macgub 1
View3ds 0.076 - XII 2021
2
1. Detecting manifold chunks procedure based on kind of sorted pivot
3
   table. Chunks are counted and this number displayed.
4
2. New calculating normal vectors proc that use some data produced
5
   by new chunks routine. Now big object loading is fast. I load object that
6
   contains ~500000 vertices,  ~700000 faces and  ~2000 0000 unique edges
7
   in few seconds on i5 2cond gen. Earlier such objects calculating was
8
   rather above time limits.
9
3. On http://board.flatassembler.net occasionaly there are some disccusions
10
   about optimizing. Some clever people, wich skills and competence I trust,
11
   claims - for CPU's manufactured last  ~15 years size of code is crucial
12
   for speed. (Better utilize CPU cache).
13
   So I wrote some 'movsd' mnemonics instead  'mov [edi],sth'; 'loop' instead
14
   'dec ecx,jnz sth'. Moreover I come back to init some local varibles
15
   by 'push' (flat_cat.inc). I took effort to change divisions to
16
   multiplications  two_tex.inc  (works ok in fpu only Ext = NON mode and
17
   of course in Ext = SSE3 mode),  grd_tex.inc (single line not parallel
18
   muls, whole drawing routine  4 divs instead 27 divisions),
19
   bump_tex.inc - 3 divs in SSE2 mode.s  See sources for details.
20
4. Editor button allows now editing by vertex all above 65535 vert objects.
21
----------------------------------------------------------------------------------
22
 
9512 IgorA 23
View3ds 0.075 - XII 2021
24
1. Cusom rotate using keys and mouse scroll support by Leency.
25
----------------------------------------------------------------------------------
26
 
27
View3ds 0.074 - IX 2021
28
1. Fixed emboss bug in grd lines displaying model.
29
2. Grd line exceedes screen problem fix.
30
3. New rendering model - ray casted shadows and appropiate button to
31
   set 'on' this option. Note that is non real time model, especially when
32
   complex object is computed. I took effort to introduce accelerating
9740 macgub 33
   structure - AABB (Axis Aligned Bounding Boxes).. but it is disabled
9512 IgorA 34
   for now - seems to work incorrect(slow).
35
----------------------------------------------------------------------------------
36
 
9237 leency 37
View3ds 0.073 - may 2021
38
1. I introduced procedure for searching nonredundand edges.
39
2. Writing some info about object: vertices, triangles unique edges
40
    count.
41
-----------------------------------------------------------------------------------
8232 leency 42
 
8719 leency 43
View3ds 0.072 - march 2021
44
1. New displaying model - texturing with bilinear filtering and transparency
9237 leency 45
    simultanusly. Note that filtering is done only inside polygon. To better
8719 leency 46
    quality of image there is a need to use floats coordinates of texture to pass
47
    as arguments to single triangle rendering proc.
48
2. Optimizations.
9237 leency 49
3. SSE3 version runs correct on SSE2 cpus, but real phong, glass and
8719 leency 50
    transparented texturing with filtering rendering models are disabled.
51
-----------------------------------------------------------------------------------
52
 
8666 dunkaist 53
View3ds 0.071 - VIII 2020
54
1. New displaying model - glass -  it's two pass rendering. First pass calculates
55
   Z position of all front pixels, second render image with adding reflective
56
   component of light only for front pixels. Transparent effect by adding with saturation.
57
2. I removed bug with performing generation object after choosing 'emboss' option.
58
-----------------------------------------------------------------------------------
59
 
8232 leency 60
View3ds 0.070 - VII 2020
61
1. Some keys support by Leency.
62
2. New displaying model - real Phong - real not fake normal vector interpolation,
63
   normalising it and calculating  dot product (one for each light).
64
   It requires SSE3.  (by me, Maciej Guba)
65
-----------------------------------------------------------------------------------
66
 
8047 leency 67
View3ds 0.069 - May 2020
68
1. KPacked files support by Leency.
69
2. 32bit vertices indexes and ability to load whole RAM limited objects.
70
   (Above 65535 vertices and triangles), (by me).
71
3. I switch off painters algotithm mode (depth sorting). In app impelementetion it has
72
   limited vertices count and produce less quality image than Z buffer Catmull algo.
73
   In addition this switch off reduces app size, (by me).
74
-----------------------------------------------------------------------------------
75
 
7280 leency 76
View3ds 0.068 - XI 2016
77
1. Editing option - new 'editor' button.
8014 leency 78
2. For now I disable perspective correction, to make implemtation
79
   of editing option easier.
7280 leency 80
-----------------------------------------------------------------------------------
81
 
6769 IgorA 82
View3ds 0.067 - XI 2016
83
1. Sizable app window.
84
-----------------------------------------------------------------------------------
5486 leency 85
 
6769 IgorA 86
View3ds 0,066 - X 2016
6648 leency 87
1. App window size according to current screen resolution.
88
2. New emboss procedure.
89
-----------------------------------------------------------------------------------
90
 
6619 leency 91
View3ds 0.065 - Feb 2015
92
1. Asc files support.
93
-----------------------------------------------------------------------------------
94
 
5486 leency 95
View3ds 0.064 - Nov 2012
3066 leency 96
1. Bug fixes.
97
-----------------------------------------------------------------------------------
98
 
99
View3ds 0.063 - X 2012
100
1. Postprocessing effect - wave. Ability to change amplitude and frequency.
101
-----------------------------------------------------------------------------------
102
 
103
View3ds 0.062 - VII 2012.
104
1. Counter fix by Mario.
105
2. New drawing model - smooth shaded lines (edges only view) by me.
106
-----------------------------------------------------------------------------------
107
 
2736 leency 108
View3ds 0.061 - Nov 2011.
109
1. Two new buttons to increase and decrease brightness.
110
-----------------------------------------------------------------------------------
111
 
2193 leency 112
View3ds 0.060 - Aug 2011.
113
1. Header fix by Leency.
114
2. SSE2 optimizations by me. (Most visable in BUMP_TEX mode.)
2736 leency 115
-----------------------------------------------------------------------------------
2193 leency 116
 
1979 yogev_ezra 117
View3ds 0.059 - June 2011.
118
1. Bump and pararell two texture  mapping functions optimizations.
119
   (files bump_cat.inc & two_tex.inc)
120
   On my P4 changes are rather non visable, but on dual core in KlbrInWin
121
   optimizations runs preety nice.
122
-----------------------------------------------------------------------------------
123
 
124
View3ds 0.058 - June 2011.
6619 leency 125
1. Blur function optimization on SSE and SSE2 (buttons 'blur' and 'fire').
1979 yogev_ezra 126
-----------------------------------------------------------------------------------
6619 leency 127
 
1931 yogev_ezra 128
View3ds 0.057 - April 2011.
129
1. By opening file bigger then ~18 KB, and choosing env mode program terminate.
130
   I remove this bug
131
-----------------------------------------------------------------------------------
132
 
133
View3ds 0.056 - February 2011.
134
1. MMX optimizations in 2tex mode (file two_tex.inc).
135
2. Tiny SSE optimizations (file BUMP_CAT.INC).
136
3. Bit (two instructions) improved random light generation procedure.
137
-----------------------------------------------------------------------------------
138
 
1819 yogev_ezra 139
View3ds 0.055 - January 2011.
140
1. SSE optimizations (file BUMP_TEX.INC).
141
2. Compiles correctly in newest FASM.
142
-----------------------------------------------------------------------------------
143
 
144
View3ds 0.054 - December 2009 (Updated January 2010).
145
1. Skinned window by Leency.
146
2. Optimizations.
147
3. Re map texture, bumps option - allow spherical mapping around each axle (X,Y,Z).
148
4. Problem with too small memory to generate object fixed. (Problem ocurred with
149
   house.3ds object and others objects contains less than 1000 faces and points).
150
-----------------------------------------------------------------------------------
151
 
152
View3ds 0.053 - (?) 2009
153
1. Optimizations.
154
-----------------------------------------------------------------------------------
155
 
156
View3ds 0.052 - November 2007.
157
1. Memory for file is allocated dynamically.
158
2. Optimizations.
159
Note: compiling correct only for KolibriOS.
160
-----------------------------------------------------------------------------------
161
 
162
View3ds 0.051 - October 2007.
163
1. More smooth texture mapping in tex and txgr shading model and others based on
164
   tex3.inc, tex_cat.inc shading models.
165
2. Predefined three, I hope, nice lights.
166
-----------------------------------------------------------------------------------
167
 
168
View3ds 0.05 - (?) 2007
169
1. New shading model: cubic environment mapping with 1.5 kb light buffer.
170
2. Bumps optionally according to texture. ( It gives so called texture with
171
   shifts in bumps + texture shading model. )
172
3. Bumps depth button.
173
-----------------------------------------------------------------------------------
174
 
175
View3ds 0.04 - March 2007.
176
1. New shading model: bump + texture.  Only version with z coordinate
177
   interpolation.
178
2. SSE optimizations ( files: two_tex.inc and bump_tex.inc )
179
-----------------------------------------------------------------------------------
180
 
181
View3ds 0.03 - March 2007.
182
1. Two shading models: smooth + texture, spherical environment mapping + texture.
183
   Version only with z coordinate interpolation.
184
2. Bit changed rotary. I took attempt in SSE instuctions. ( matrix multiplication )
8047 leency 185
3. Color position depend drawing model  instead spot light ( I hope,spot light come
1819 yogev_ezra 186
   back in future ).
187
-----------------------------------------------------------------------------------
188
 
189
View3ds 0.02 - December 2006.
190
1. New shading models - "spot" - spot light (only one, it's very CPU hungry model,
191
   and there is no easy way to implement buffer) with light attenuation (In my
192
   implmentation works not perfect); "dots" - app draws only points (with no culling).
193
2. Some loseless operations "mirror": according to each axis, rotary 90 degrees.
194
3. Postprocesing efects: Emboss (use blur to make edges more visable), fire ( be
195
   carefull during `fire + embos`parallel using).
196
4. "Move" -  Changes meaning of 'add vector' buttons:
197
   used "obj"  move  object, "camr" move camera (in this option use culling = 'off'
198
   I must make culling procedure bit advanced).
199
5. Generate button. Few objects generating (with bad normals)
200
6. Some optimizations on MMX.
201
7. I took an attempt to memory managing functions, but it decreased speed (no aligned
202
   memory in Menuet functions?)
203
 
204
There is really much work to do and I see disorder in app code.
205
Greetings for all, especially Madis Kalme for .3ds files support and good vibrations.  ;)
206
Merry Christmas and happy new year.
207
-----------------------------------------------------------------------------------
208
 
209
App View3ds ver 0.01 - November 2006.
210
1. Object generating (for now only one). When no parameter specified or error occured
211
   during reading file from disk, app generate object. No teapot.3ds needed on ramdrive,
212
   but, if this file exist it would be read as default.
213
2. Bug in read_from_file procedure fixed. (In  May, when I made shading light vector
214
   depend, I demaged bit Madis' procedure.)
215
3. Backface culling on/off option. (Some objects need culling off - they have mismatched
216
   normal vectors. Example: iron.3ds, sink.3ds, the generated one.)
217
4. Random lights procedure.
218
5. Spherical (instead old - planar ) bump, texture mapping.
219
6. Bit improved menu.
220
7. Blur.
221
-----------------------------------------------------------------------------------
222
 
223
App "View3ds" - it's very early, still unfinished version but I want show you it.
224
Based on earlier demos.
225
1. 3ds object import as a parameter ( for now only short names supported )
226
   I updated Kfar app - it can run view3ds with parameter. You must copy it on
227
   ramdrive. You could do such funny thing: Run updated Kfar in KolbrInWin,
228
   before them set in KolInWin.ini file path to ramdrive, where yo have "view3ds",
229
   choose 3ds file ... Emulator will run View3ds with selected file.
230
   If no parameter specified, app try open tpot.3ds from ramdrive. If tpot.3ds
231
   don't exist on rd, app hang.
232
2. Many lights. Every light - unlinear model ( Phong illumination ). For now
233
   no light setting option.
234
3. Light buffer for grd, flat model.