@@ -6,7 +6,6 @@ Android 3D Model Viewer
6
6
This is a demo of OpenGL ES 2.0.
7
7
It is basically an android application with a 3D engine that can load Wavefront OBJ, STL, DAE & GLTF files.
8
8
The purpose of this application is to learn and share how to draw using OpenGL language.
9
- The application does not use any third party library.
10
9
11
10
* Wafefront format (OBJ): https://en.wikipedia.org/wiki/Wavefront_.obj_file
12
11
* STereoLithography format (STL): https://en.wikipedia.org/wiki/STL_(file_format)
@@ -161,6 +160,12 @@ You may need one of this glasses to view models in 3D virtual reality.
161
160
[ <img src =" https://raw.githubusercontent.com/the3deers/android-3D-model-viewer/master/market/cardboard-3d.jpg " >] ( https://amzn.to/2E8M1Tq )
162
161
163
162
163
+ Dependencies
164
+ ============
165
+
166
+ * implementation 'com.fasterxml.jackson.core:jackson-databind:2.13.4' (gltf json parser)
167
+
168
+
164
169
Documentation
165
170
=============
166
171
@@ -197,155 +202,4 @@ Assets
197
202
* skybox sea : https://learnopengl.com/Advanced-OpenGL/Cubemaps
198
203
* skybox sand : Copyright 2012 Mobialia - https://github.com/mobialia/jmini3d
199
204
* repository (parts) : Community contribution (Professsor S)
200
-
201
-
202
- ChangeLog
203
- =========
204
-
205
- (f) fixed, (i) improved, (n) new feature
206
-
207
- - 3.4.1 (23/09/2022)
208
- - (f) bug fixing: lighting, textures, etc #176
209
- - (i) texture loading refactoring #61
210
- - (i) shader refactoring & deduplication #61
211
- - 3.4.0 (17/09/2022)
212
- - (n) GLTF basic support #176
213
- - 3.3.1 (12/09/2022)
214
- - (f) fixed texture issue + color issue + blending issue. fixed #214
215
- - (f) fixed texture issue #204
216
- - (f) fixed STL binary fallback issue #208
217
- - 3.3.0 (23/06/2022)
218
- - (n) interactive object orientation
219
- - (n) isometric, orthographic and free camera view
220
- - (n) New gui axis + gui info
221
- - (f) fixed FPS counter
222
- - (i) some user options are being saved (camera settings)
223
-
224
- - 3.2.0 (02/02/2022)
225
- - (i) repository explorer improved - multiple index files
226
- - (f) smoothing fixed
227
- - (f) fixed renderer memory leak
228
- - 3.1.1 (28/10/2021)
229
- - (f) google play required library upgrades
230
- - (f) spanish menu fixed
231
- - 3.1.0 (10/10/2020)
232
- - (n) skybox
233
- - (f) deleted unlicensed assets
234
- - 3.0.4 (05/10/2020)
235
- - (f) support for multiple skin controllers
236
- - (f) skeleton fixed to use invert of inverse bind matrix
237
- - 3.0.3 (05/09/2020)
238
- - (f) smooth faces are now toggle featured - not all models should be smoothed
239
- - (f) fixed normal calculation - using high precision numbers
240
- - 3.0.2 (03/09/2020)
241
- - (f) setUniform4fv function had length zero - issue detected with Xiaomi Redmi 8
242
- - (f) gl_MaxVertexUniformVectors is apparently not working - "too many uniforms" - detected in Xiaomi Redmi 8
243
- - 3.0.1 (15/07/2020)
244
- - (f) Forgot to add requestLegacyExternalStorage option - Android 10 requirement
245
- - 3.0.0 (15/07/2020)
246
- - (n) Support for Object Groups (wavefront: o,g, dae: <geometry >)
247
- - (n) Support for Smoothing Groups (wavefront)
248
- - (n) migrated project to androidx compat libraries
249
- - (n) GUI - fps counter - experimental framework
250
- - (n) Collada support for polygon with holes (<ph >)
251
- - (i) Complete re-engineering and refactoring of the code
252
- - (i) Wavefront + Collada Loader reimplemented
253
- - (f) Fixed overall bugs
254
- - 2.7.0 (13/11/2019)
255
- - (n) new blending force mode to 50%
256
- - (f) fixed light rendering issues on shaders #125 (diffuse + specular)
257
- - (f) fixed bugs when DAE had multiple geometries #125
258
- - (f) fixed textures not being linked issue
259
- - (f) fixed performance issues: now rendering below 5% cpu & no ram allocation
260
- - 2.6.0 (20/10/2019)
261
- - (n) #81 Support for collada files with multiple geometries
262
- - (f) #94 fixed setVisible(boolean)
263
- - (f) #92 fixed multiple color rendering for non-triangulated file.obj
264
- - (i) overall engine improved
265
- - 2.5.1 (20/05/2019)
266
- - (f) wavefront loader fixed for meshObject point to negative indices
267
- - 2.5.0 (19/05/2019)
268
- - (n) new blending toggle
269
- - (n) new color toggle
270
- - (i) engine refactoring: externalized shaders
271
- - (i) engine improved: fixed bugs and removed classes
272
- - 2.4.0 (16/05/2019)
273
- - (n) stereoscopic rendering: anaglyph + cardboard
274
- - 2.3.0 (27/09/2018)
275
- - (n) Externalized 3d engine into android library module
276
- - (n) Wiki initial documentation
277
- - 2.2.0 (11/09/2018)
278
- - (n) Load models from app repository
279
- - (i) Reduced app size to only 1 Megabyte
280
- - 2.1.0 (07/09/2018)
281
- - (n) Skeleton Animation
282
- - (n) File chooser to load files from any where
283
- - (f) Collada Animator fixed (INV_BIND_MATRIX, bind_shape_matrix)
284
- - (f) Collada Animator Performance improved
285
- - (f) Application refactoring (ContentUtils, Loaders, etc)
286
- - (f) Several bugs fixed
287
- - 2.0.4 (22/12/2017)
288
- - (n) Implemented face collision detection algorithm: ray-triangle + octree
289
- - 2.0.3 (21/12/2017)
290
- - (i) Improved collision detection algorithm (ray-aabb) for selecting objects
291
- - (i) BoundingBox code cleanup
292
- - 2.0.2 (17/12/2017)
293
- - (f) Collada XML parser is now android's XmlPullParser
294
- - (f) Animation engine frame times improved
295
- - (n) Camera now moves smoothly
296
- - 2.0.1 (08/12/2017)
297
- - (f) Multiple Collada parser fixes
298
- - (f) Camera now can look inside objects
299
- - 2.0.0 (24/11/2017)
300
- - (n) Support for collada files with skeletal animations :)
301
- - 1.4.1 (21/11/2017)
302
- - (f) #29 : Crash loading obj with only vertex info
303
- - 1.4.0 (19/11/2017)
304
- - (f) #28 : Load texture available for any model having texture coordinates
305
- - 1.3.1 (23/04/2017)
306
- - (f) #18 : Removed asReadOnlyBuffer() because it is causing IndexOutOfBounds on Android 7
307
- - 1.3.0 (17/04/2017)
308
- - (n) #17 : Added support for STL files
309
- - (n) #17 : Asynchronous building of model so the build rendering is previewed
310
- - (f) #17 : Added Toasts to buttons to show current state
311
- - 1.2.10 (16/04/2017)
312
- - (f) #16 : Immersive mode is now configurable in the ModelActivity Intent: b.putString("immersiveMode", "false");
313
- - (f) #16 : Background color configurable in the ModelActivity Intent: b.putString("backgroundColor", "0 0 0 1");
314
- - (f) #16 : Fixed vertex normals generation (vertices were missing)
315
- - (f) #16 : Scaling is now implemented in the ModelView Matrix with Object3DData.setScale(float[ ] )
316
- - (f) #16 : Wireframe generation is now using the source data
317
- - (n) #16 : Implemented Point Drawing, like wireframe mode but only the points are drawn
318
- - (f) #16 : Removed trailing slash from parameter "assetDir"
319
- - (f) #16 : Access to ByteBuffers made absolute so there are thread safe (future fixes need this)
320
- - 1.2.9 (11/04/2017)
321
- - (f) #15 : Toggle rotating light
322
- - (f) #15 : Wireframe with textures and colors
323
- - 1.2.8 (10/04/2017)
324
- - (f) Fixed #14 : Camera movement improved. Only 1 rotation vector is used + space bounds set
325
- - 1.2.8 (04/04/2017)
326
- - (f) Fixed #13 : parsing of vertices with multiple spaces
327
- - (i) Improved error handling on loading task
328
- - (i) Vertices are defaulted to (0,0,0) if parsing fails
329
- - 1.2.7 (03/04/2017)
330
- - (i) Removed commons-lang3 dependency
331
- - 1.2.6 (02/04/2017)
332
- - (f) Fixed #12 . Drawing the wireframe using GL_LINES and the index buffer (drawElements)
333
- - 1.2.5 (01/04/2017)
334
- - (f) Fixed #10 . Map meshObject to texture only when using the only loaded texture
335
- - (f) Fixed #11 . Generation of missing vertex normals
336
- - 1.2.4 (30/03/2017)
337
- - (f) Fixed #5 . Memory performance optimization
338
- - 1.2.3 (27/03/2017)
339
- - (f) Fixed #1 . Cpu performance optimization
340
- - 1.2.2 (25/03/2017)
341
- - (f) Fixed #9 . IOOBE loading face normals when meshObject had no texture or normals
342
- - 1.2.1 (27/02/2017)
343
- - (f) Fixed loading external files issue #6
344
- - (i) Project moved to gradle
345
- - 1.2.0 (06/04/2016)
346
- - (n) Implemented selection of objects
347
- - 1.1.0 (30/03/2016)
348
- - (n) Implemented lighting & toggle textures & lights
349
- - (i) Refactoring of 3DObjectImpl
350
- - 1.0.0 (27/03/2016)
351
- - (n) First release in Google Play Android Market
205
+
0 commit comments