Project

General

Profile

« Previous | Next » 

Revision 50642a86

Added by Leszek Koltunski over 7 years ago

Simplify drawRecursive

View differences:

src/main/java/org/distorted/library/DistortedNode.java
54 54
    {
55 55
    long ID;
56 56
    int numPointingNodes;
57
    int numRender;
57
    long currTime;
58 58
    ArrayList<Long> key;
59 59
    DistortedFramebuffer mFBO;
60 60

  
......
63 63
      ID              = id;
64 64
      key             = k;
65 65
      numPointingNodes= 1;
66
      numRender       =-1;
66
      currTime        =-1;
67 67
      mFBO            = null;
68 68
      }
69 69
    }
......
197 197
///////////////////////////////////////////////////////////////////////////////////////////////////
198 198
// return the total number of render calls issued
199 199

  
200
  int drawRecursive(int renderNum, long currTime, DistortedOutputSurface surface)
200
  int drawRecursive(long currTime, DistortedOutputSurface surface)
201 201
    {
202 202
    int ret = 0;
203 203

  
204
    if( mNumChildren[0]>0 && mData.numRender!=renderNum )
204
    if( mNumChildren[0]>0 && mData.currTime!=currTime )
205 205
      {
206
      mData.numRender = renderNum;
206
      mData.currTime = currTime;
207 207
      mData.mFBO.setAsOutput();
208 208

  
209 209
      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
......
217 217

  
218 218
      for(int i=0; i<mNumChildren[0]; i++)
219 219
        {
220
        ret += mChildren.get(i).drawRecursive(renderNum, currTime, mData.mFBO);
220
        ret += mChildren.get(i).drawRecursive(currTime, mData.mFBO);
221 221
        }
222 222
      }
223 223

  
src/main/java/org/distorted/library/DistortedOutputSurface.java
27 27

  
28 28
abstract class DistortedOutputSurface extends DistortedSurface implements DistortedAttacheable
29 29
{
30
  private static int mRender = 0;
31

  
32 30
  private ArrayList<DistortedNode> mChildren;
33 31
  private int mNumChildren;   // ==mChildren.length(), but we only create mChildren if the first one gets added
34 32

  
......
115 113
 */
116 114
  public int render(long time)
117 115
    {
118
    mRender++;
119

  
120 116
    // change tree topology (attach and detach children)
121 117
/*
122 118
    boolean changed =
......
154 150

  
155 151
    for(int i=0; i<mNumChildren; i++)
156 152
      {
157
      numRenders += mChildren.get(i).drawRecursive(mRender,time,this);
153
      numRenders += mChildren.get(i).drawRecursive(time,this);
158 154
      }
159 155

  
160 156
    return numRenders;
src/main/res/raw/test_vertex_shader.glsl
19 19

  
20 20
precision lowp float;
21 21

  
22
uniform vec2 u_objD;             // object width X object height.
23
                                 // point (0,0) is the center of the object
24
uniform mat4 u_MVPMatrix;        // the combined model/view/projection matrix.
25
attribute vec2 a_Position;       // Per-vertex position information we will pass in.
22
uniform vec2 u_objD;       // object width X object height.
23
uniform mat4 u_MVPMatrix;  // the combined model/view/projection matrix.
24
attribute vec2 a_Position; // Per-vertex position information we will pass in.
26 25

  
27 26
//////////////////////////////////////////////////////////////////////////////////////////////
28 27

  

Also available in: Unified diff