Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - kkl

#1
Hi,

I'm using Blender2Ogre to export ogre mesh. It seems like the exporter uses morph animation instead of pose animation (morph animation is similar to pose animation as described by ogre http://www.ogre3d.org/docs/manual/manual_78.html).

It prompts error when attempt to convert mesh.xml to bones

        Exception in thread "main" java.lang.IllegalArgumentException: jointIndex: -1
        at raft.jpct.bones.MeshChannel.<init>(MeshChannel.java:39)
        at raft.jpct.bones.MeshChannel.<init>(MeshChannel.java:25)
        at raft.jpct.bones.BonesImporter.convertJMEMeshChannel(BonesImporter.java:609)
        at raft.jpct.bones.BonesImporter.importOgre(BonesImporter.java:259)
        at raft.jpct.bones.util.JMEOgreImporter.loadGroup(JMEOgreImporter.java:112)
        at raft.jpct.bones.util.JMEOgreImporter.loadGroup(JMEOgreImporter.java:88)
        at raft.jpct.bones.util.JMEOgreImporter.run(JMEOgreImporter.java:69)
        at raft.jpct.bones.util.JMEOgreImporter.main(JMEOgreImporter.java:169)


I backtracked the code and notice jme library in Bones does not support morph animation. Do we have a newer jme library which support for that? If we use latest version, does it break anything?
#2
Support / NPOTTexture limitation?
March 05, 2016, 05:51:15 PM
Hi Egon,

I would like to make a depth of field effect by using post proccessing. It requires rendering the object z buffer in 1st render pass, then combine with main scene with a custom dof shader set to the framebuffer for post processing. To render the z buffer, we need to render the scene on a texture match with the screen width and height. I'm thinking of using NPOTTexture, but you mentioned in doc saying NPOTTexture is preferred to be in power of 2 as it's not supported in some devices. How should we do in this case? I worry if we create a power of 2 NPOTTexture and it does not match to screen width and height, we might have some texture size ratio problem. Please advise, thanks.
#3
Projects / [3D Live Wallpaper] Betta Fish 3D
December 07, 2015, 04:36:10 PM
Betta Fish 3D



Inspired by 6S motion wallpaper, Betta Fish 3D is designed to refine the current 6S motion wallpaper, with outstanding and aesthetic graphics, finished with silky smooth animation.

Betta Fish 3D is a 3D live wallpaper that mimics the actual famous betta fish, the Siamese fighting fish. Betta Fish 3D is developed in a way that imitating exquisite photography of famous betta fish in aquarium tank. With 6 different betta fish variations and background color options for customizations, Betta Fish 3D is more lively and exciting for a live wallpaper. Betta Fish 3D is also designed to match fish color and background color, thus creating a phenomenal, state-of-art scene. In addition, Betta Fish 3D features silky smooth animation, while conversing your device battery at the same time.

Unlock all 6 different betta fish and background colors in Betta Fish 3D full version for more customizations. Try it out now!

Download Betta Fish 3D Now!

Betta Fish 3D demo on YouTube
#4
Support / Texture virtualize delete
November 07, 2015, 03:58:44 PM
Hi egon,

Is it possible if you could add delete feature for texture that is virtualized to memory card? Or add delete when textureManager.unload() is called.

Reasons to have this:
1. In live wallpaper, there are occasions where only required textures are loaded, based on user settings in preference.  To avoid loading all textures during app startup (which can be slow),  only one required texture is loaded.
2. Virtualizer.cleanUp() can't be used as it will clean all other textures which are still in use. It also cleans up the shared texture from other Wallpaper instance too.
3. To save storage. Live Wallpaper context is always persistent and never close unless user select other live wallpaper. When new texture is virtualized, it seems like jpct will save another texture in memory card, even if the same texture id but different object is saved before, CMIIW.
#5
Hi raft,

I got this error message when converting ogre xml to bones. The 2 objects in Blender and the objects are sharing the same skeleton. What actually caused this error, since 2 objects are suppose to be different in their number of vertices and sharing the same skeleton? Did I miss anything when i separate the object into 2 with sharing skeleton?
#6
Projects / [3D Live Wallpaper] Ocean Blue 3D using JPCT-AE
September 18, 2015, 04:12:35 PM
Ocean Blue 3D



Dive into the beautiful and breathtaking deep blue ocean with a glimpse of lively underwater sea life. The sunlight high above from crystal clear ocean surface beams through the depth of the blue ocean, together with animated coral that swing along with the sea current, and a school of fish swimming past the plankton, creates a magnificent scene that you would never forget.

Ocean Blue 3D is a 3D live wallpaper that mimics the real life diving experience. Many customizations and options such as sea turtle, percula clown fish and the magnificent manta ray ,are available to make Ocean Blue 3D live wallpaper much lively and exciting. Ocean Blue 3D is also designed to adapt to your device background, so the tones of color match to your icons and homescreen. Thus, Ocean Blue 3D features silky smooth animation, while conserving your device battery at the same time.


Optional pack, Sea Life Pack, is also available for in-app purchase to make Ocean Blue 3D much more exciting with more sea life and customization such as butterfly fish, tomato clown fish, manta ray, sea turtle and many more. Try it out now!

Download Ocean Blue 3D Now!

Ocean Blue 3D demo on YouTube
#7
Hi egon,

I tested my scene in Nexus 6 and some objects (opaque) do not show in the scene. The weirder part is, some objects (opaque) just disappear at a fixed position. Initially, I thought it's caused by other transparent objects overlapping them, but when I remove all transparent objects and render again with only opaque objects, and what I got is the objects are not render properly where they are cut off half way (see attachments). The cut off part only happen when another object is nearer to camera, overlapping it.

I checked from jpct log with debug mode, and it seems all normal. I do use custom shaders for those objects and some custom setSortOffset values. I tested on samsung s4, samsung note 10 and samsung trend plus, and they all work ok with no issue.

Do you have idea what might cause the issue?
#8
Hi,

I have one rotation matrix retrieved from Blender with the following coordinate system:
+Z is up
+X is right
-Y is forward

How do we map/convert that matrix with the coordinate system to JPCT's coordinate system?
#9
hi raft,

Is there any simple way to rotate the entire skeleton of an object permanently like rotateMesh() in jpct? I'm trying to map different coordination system from Blender to JPCT. Thanks.
#10
Support / Light position transformation
February 08, 2015, 09:19:16 AM
Hi egon,

How do we apply light position final transformation for shader? I tried use Camera.transform the the light position and the final result is incorrect. I need it for uploading custom light position to shader. Thanks n look forward to ur reply.
#11
Support / Check vertex position after import .obj
January 02, 2015, 11:41:39 AM
Hi Egon,

How can we check the final vertex position after importing .obj? I wanted to map it to jpct coordination. 
#12
Support / Camera accelerate and decelerate with scroll
December 15, 2014, 02:29:40 AM
Hi,

Has anyone tried camera smooth scrolling before? Something like, the camera accelerates based on velocity and slows down(decelerate) when the touch event stops.
#13
Support / GLSLShader usage same between jpct and jpct-ae?
December 14, 2014, 10:22:52 AM
Hi egon,

R they the same? I tried using the same method from jpct-ae and it does nt work in jpct. Plus, it shows warning like Matrix construction from matrix is not allowed in implicit GLSL version number 110
#14
Support / Get modelViewMatrix from object
November 16, 2014, 12:50:53 PM
Hi Egon,

Is there anyway to get modelViewMatrix from object? I need it for multiple sub-meshes location and direction (crowd animation with hardware skinning), so I can animate the submesh by using only one object to reduce drawcall.
#15
Support / Does setStaticUniform upload GPU every frame?
November 12, 2014, 10:35:42 AM
Hi Egon,

Does setStaticUniform upload its value to GPU every frame? If yes, is it possible if we can make it upload only once and reuse afterwards, like texture?
#16
Hi raft,

I'm exporting bones from Blender using blender2orge and I notice the number of vertices is different. My object in Blender has 574 vertices, but in jpct getUniqueVertexCount() shows 600. Do you have any clue what's happening? I need to keep track of a few selected vertices for manipulation (for hardware skinning object instancing) but it seems like it got messed up after that.
#17
Support / Pre-etc1-compressed texture
November 02, 2014, 01:01:41 PM
Hi Egon,

It seems like compressing texture takes a big amount of time to process. According to log, it takes around ~2306ms just to compress all textures. It would be great if we can provide the pre-compressed texture so it would be faster to process and we can save more battery. In my case, user will check how much battery my live wallpaper will consume in the phone settings. If users open and close the live wallpaper for multiple times, the battery consumption shoots really high because of the app initialization, which they will start complaining about the app.

For reference, here's the log during texture compression (Tested on Samsung Galaxy S4 with octa cores):

11-02 19:25:22.366: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.366: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:22.366: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:22.401: I/jPCT-AE(32481): ...done in 35/31ms
11-02 19:25:22.401: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:22.401: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:22.416: I/jPCT-AE(32481): ...done in 13/11ms
11-02 19:25:22.416: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:22.416: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 3/3ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:22.421: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:22.421: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:22.421: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:22.426: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.426: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:22.426: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:22.426: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.436: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.436: I/jPCT-AE(32481): Compressing texture (256*256) to ETC1...
11-02 19:25:22.436: I/jPCT-AE(32481): Creating byte buffer of size 196608
11-02 19:25:22.576: I/jPCT-AE(32481): ...done in 137/113ms
11-02 19:25:22.576: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:22.576: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:22.611: I/jPCT-AE(32481): ...done in 33/28ms
11-02 19:25:22.611: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:22.611: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:22.621: I/jPCT-AE(32481): ...done in 10/7ms
11-02 19:25:22.621: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:22.621: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:22.621: I/jPCT-AE(32481): ...done in 3/2ms
11-02 19:25:22.621: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:22.621: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:22.626: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:22.626: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:22.626: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:22.626: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:22.626: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:22.626: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:22.626: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.626: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:22.626: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:22.626: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.626: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:22.626: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:22.626: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.636: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.646: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.646: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:22.646: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:22.681: I/jPCT-AE(32481): ...done in 34/29ms
11-02 19:25:22.681: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:22.681: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:22.691: I/jPCT-AE(32481): ...done in 10/7ms
11-02 19:25:22.691: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:22.691: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:22.691: I/jPCT-AE(32481): ...done in 3/2ms
11-02 19:25:22.691: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:22.691: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:22.696: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:22.696: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:22.696: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:22.696: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:22.696: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:22.696: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:22.696: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.696: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:22.696: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:22.696: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:22.696: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:22.696: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:22.696: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.706: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.741: D/dalvikvm(32481): GC_FOR_ALLOC freed 8063K, 34% free 28251K/42784K, paused 36ms, total 36ms
11-02 19:25:22.746: I/jPCT-AE(32481): Compressing texture (256*256) to ETC1...
11-02 19:25:22.746: I/jPCT-AE(32481): Creating byte buffer of size 196608
11-02 19:25:22.871: I/jPCT-AE(32481): ...done in 128/107ms
11-02 19:25:22.876: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:22.876: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:22.906: I/jPCT-AE(32481): ...done in 32/27ms
11-02 19:25:22.906: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:22.906: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:22.916: I/jPCT-AE(32481): ...done in 9/7ms
11-02 19:25:22.916: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:22.916: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:22.916: I/jPCT-AE(32481): ...done in 2/1ms
11-02 19:25:22.921: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:22.921: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:22.921: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:22.921: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:22.921: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:22.921: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:22.921: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:22.921: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:22.921: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.921: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:22.921: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:22.921: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.921: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:22.921: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:22.921: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:22.931: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.941: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:22.946: I/jPCT-AE(32481): Compressing texture (256*256) to ETC1...
11-02 19:25:22.946: I/jPCT-AE(32481): Creating byte buffer of size 196608
11-02 19:25:23.081: I/jPCT-AE(32481): ...done in 132/112ms
11-02 19:25:23.081: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:23.081: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:23.126: D/dalvikvm(32481): GC_FOR_ALLOC freed 3452K, 27% free 28635K/38908K, paused 44ms, total 44ms
11-02 19:25:23.161: I/jPCT-AE(32481): ...done in 81/31ms
11-02 19:25:23.166: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:23.166: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:23.176: I/jPCT-AE(32481): ...done in 10/7ms
11-02 19:25:23.176: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:23.176: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:23.176: I/jPCT-AE(32481): ...done in 2/2ms
11-02 19:25:23.176: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:23.176: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:23.181: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:23.181: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:23.181: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:23.181: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.181: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:23.181: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:23.181: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.181: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:23.181: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:23.181: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.181: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:23.181: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:23.181: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.191: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:23.201: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:23.201: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:23.201: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:23.231: I/jPCT-AE(32481): ...done in 32/27ms
11-02 19:25:23.236: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:23.236: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:23.241: I/jPCT-AE(32481): ...done in 10/7ms
11-02 19:25:23.246: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:23.246: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:23.246: I/jPCT-AE(32481): ...done in 3/2ms
11-02 19:25:23.246: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:23.246: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:23.246: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:23.246: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:23.246: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:23.246: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:23.246: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:23.246: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:23.251: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.251: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:23.251: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:23.251: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.251: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:23.251: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:23.251: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.251: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:23.256: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:23.291: D/dalvikvm(32481): GC_FOR_ALLOC freed 3336K, 29% free 27742K/38908K, paused 34ms, total 34ms
11-02 19:25:23.321: D/dalvikvm(32481): GC_FOR_ALLOC freed <1K, 26% free 29790K/39936K, paused 21ms, total 21ms
11-02 19:25:23.336: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:23.346: I/jPCT-AE(32481): Compressing texture (512*512) to ETC1...
11-02 19:25:23.346: I/jPCT-AE(32481): Creating byte buffer of size 786432
11-02 19:25:23.801: I/jPCT-AE(32481): ...done in 458/392ms
11-02 19:25:23.811: I/jPCT-AE(32481): Compressing texture (256*256) to ETC1...
11-02 19:25:23.811: I/jPCT-AE(32481): Creating byte buffer of size 196608
11-02 19:25:23.931: I/jPCT-AE(32481): ...done in 123/105ms
11-02 19:25:23.936: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:23.936: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:23.971: I/jPCT-AE(32481): ...done in 33/26ms
11-02 19:25:23.971: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:23.971: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:23.981: I/jPCT-AE(32481): ...done in 9/6ms
11-02 19:25:23.981: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:23.981: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:23.981: I/jPCT-AE(32481): ...done in 2/2ms
11-02 19:25:23.981: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:23.981: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:23.981: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:23.981: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:23.981: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:23.981: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:23.986: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:23.986: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:23.986: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:23.986: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:23.986: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:23.986: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:23.986: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:23.986: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:23.986: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:24.021: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:24.061: D/dalvikvm(32481): GC_FOR_ALLOC freed 9067K, 38% free 29788K/47904K, paused 39ms, total 39ms
11-02 19:25:24.071: I/jPCT-AE(32481): Compressing texture (512*512) to ETC1...
11-02 19:25:24.076: I/jPCT-AE(32481): Creating byte buffer of size 786432
11-02 19:25:24.611: I/jPCT-AE(32481): ...done in 539/446ms
11-02 19:25:24.621: I/jPCT-AE(32481): Compressing texture (256*256) to ETC1...
11-02 19:25:24.621: I/jPCT-AE(32481): Creating byte buffer of size 196608
11-02 19:25:24.776: I/jPCT-AE(32481): ...done in 156/110ms
11-02 19:25:24.781: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:24.781: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:24.811: I/jPCT-AE(32481): ...done in 34/28ms
11-02 19:25:24.811: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:24.811: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:24.821: I/jPCT-AE(32481): ...done in 9/7ms
11-02 19:25:24.821: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:24.821: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:24.826: I/jPCT-AE(32481): ...done in 3/2ms
11-02 19:25:24.826: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:24.826: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:24.826: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:24.826: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:24.826: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:24.826: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:24.826: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:24.826: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:24.826: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:24.826: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:24.826: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:24.826: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:24.826: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:24.826: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:24.826: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:24.826: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:24.831: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:24.841: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:24.881: D/dalvikvm(32481): GC_FOR_ALLOC freed 5811K, 28% free 28253K/38908K, paused 39ms, total 39ms
11-02 19:25:24.931: D/dalvikvm(32481): GC_FOR_ALLOC freed 769K, 27% free 28767K/38908K, paused 34ms, total 34ms
11-02 19:25:24.931: I/dalvikvm-heap(32481): Grow heap (frag case) to 31.087MB for 1048592-byte allocation
11-02 19:25:24.971: D/dalvikvm(32481): GC_FOR_ALLOC freed 0K, 26% free 29791K/39936K, paused 39ms, total 39ms
11-02 19:25:24.986: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:25.006: I/jPCT-AE(32481): Compressing texture (512*512) to ETC1...
11-02 19:25:25.006: I/jPCT-AE(32481): Creating byte buffer of size 786432
11-02 19:25:25.546: I/jPCT-AE(32481): ...done in 539/444ms
11-02 19:25:25.551: I/jPCT-AE(32481): Compressing texture (256*256) to ETC1...
11-02 19:25:25.551: I/jPCT-AE(32481): Creating byte buffer of size 196608
11-02 19:25:25.671: I/jPCT-AE(32481): ...done in 120/101ms
11-02 19:25:25.676: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:25.676: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:25.706: I/jPCT-AE(32481): ...done in 30/25ms
11-02 19:25:25.706: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:25.706: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:25.716: I/jPCT-AE(32481): ...done in 8/6ms
11-02 19:25:25.716: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:25.716: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:25.716: I/jPCT-AE(32481): ...done in 3/2ms
11-02 19:25:25.716: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:25.716: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:25.716: I/jPCT-AE(32481): ...done in 1/1ms
11-02 19:25:25.721: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:25.721: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:25.721: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:25.721: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:25.721: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:25.721: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:25.721: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:25.721: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:25.721: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:25.721: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:25.721: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:25.721: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:25.726: I/jPCT-AE(32481): Retrieved texture data from disk!
11-02 19:25:25.726: I/jPCT-AE(32481): Compressing texture (128*128) to ETC1...
11-02 19:25:25.726: I/jPCT-AE(32481): Creating byte buffer of size 49152
11-02 19:25:25.756: I/jPCT-AE(32481): ...done in 28/23ms
11-02 19:25:25.756: I/jPCT-AE(32481): Compressing texture (64*64) to ETC1...
11-02 19:25:25.756: I/jPCT-AE(32481): Creating byte buffer of size 12288
11-02 19:25:25.761: I/jPCT-AE(32481): ...done in 8/6ms
11-02 19:25:25.761: I/jPCT-AE(32481): Compressing texture (32*32) to ETC1...
11-02 19:25:25.761: I/jPCT-AE(32481): Creating byte buffer of size 3072
11-02 19:25:25.766: I/jPCT-AE(32481): ...done in 2/2ms
11-02 19:25:25.766: I/jPCT-AE(32481): Compressing texture (16*16) to ETC1...
11-02 19:25:25.766: I/jPCT-AE(32481): Creating byte buffer of size 768
11-02 19:25:25.766: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:25.766: I/jPCT-AE(32481): Compressing texture (8*8) to ETC1...
11-02 19:25:25.766: I/jPCT-AE(32481): Creating byte buffer of size 192
11-02 19:25:25.766: I/jPCT-AE(32481): ...done in 1/0ms
11-02 19:25:25.766: I/jPCT-AE(32481): Compressing texture (4*4) to ETC1...
11-02 19:25:25.766: I/jPCT-AE(32481): Creating byte buffer of size 48
11-02 19:25:25.766: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:25.766: I/jPCT-AE(32481): Compressing texture (2*2) to ETC1...
11-02 19:25:25.766: I/jPCT-AE(32481): Creating byte buffer of size 12
11-02 19:25:25.766: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:25.766: I/jPCT-AE(32481): Compressing texture (1*1) to ETC1...
11-02 19:25:25.766: I/jPCT-AE(32481): Creating byte buffer of size 3
11-02 19:25:25.771: I/jPCT-AE(32481): ...done in 0/0ms
11-02 19:25:25.771: I/jPCT-AE(32481): Pre-warming done!
#18
Support / Rendering stutter at the beginning
November 02, 2014, 12:36:19 PM
Hi Egon,

I have an issue where the rendering stutters at the beginning of the onDrawFrame. I checked from log and found out it compiles shader and create buffer for VBO during rendering when object become visible. Is there any way to compile everything including shader and VBO in surfaceChanged before it starts rendering frame? I tried to call buildAllObjects() and compileAllObjects() but it seems not helping.

Here's the log during rendering:

11-02 19:25:50.231: I/jPCT-AE(32481): Compiling shader program!
11-02 19:25:50.231: I/jPCT-AE(32481): Handles of 2520036: 3/28/5
11-02 19:25:50.231: I/jPCT-AE(32481): Creating buffers...
11-02 19:25:50.231: I/jPCT-AE(32481): VBO created for object 'foreground_fish_1'
#19
Hi Egon,

I set my texture to mipmap and setTextureCompression(true), and it seems like the texture is pixelated and sometimes looks weird (some black area on part of the texture) for normal map, but it does not have the issue when compression is off. I'm using the shader code from http://www.jpct.net/wiki/index.php/Shaders. In addition, I tried out with the hello shader by setting all textures with etc1 compression, it looks quite different than what it is in without the compression. Is it normal that etc1 compression will lose texture quality? However, if the normal texture is compressed, it looks ok.
#20
Hi egon,

I have this issue where the texture becoming more blur and pixelated each time the live wallpaper resumes from pause. It takes many times till the effect is obvious. The texture is in 512x512, mipmap, and compression enabled ( setTextureCompression(true) ).

Can it be the texture is compressed over and over again till it loses the quality?