@@ -31,17 +31,10 @@ public final class BindFBO implements FBOManagerSubscriber, StateChange {
3131 private static FrameBuffersManager frameBuffersManager ;
3232 private static BindFBO defaultInstance = new BindFBO (DEFAULT_FRAME_BUFFER_NAME );
3333 private String fboName ;
34-
35- private int fboId ;
3634 private BindFBOTask task ;
3735
3836 public BindFBO (String fboName ) {
3937 this .fboName = fboName ;
40- if (!fboName .equals (DEFAULT_FRAME_BUFFER_NAME )) {
41- fboId = frameBuffersManager .getFBO (fboName ).fboId ;
42- } else {
43- fboId = DEFAULT_FRAME_BUFFER_ID ;
44- }
4538 }
4639
4740 public String getFboName () {
@@ -65,13 +58,15 @@ public boolean isTheDefaultInstance() {
6558 @ Override
6659 public RenderPipelineTask generateTask () {
6760 if (task == null ) {
68- task = new BindFBOTask (fboId , fboName );
6961 // Subscription is only needed if fboID is different than default frame buffer id.
70- if (fboId != DEFAULT_FRAME_BUFFER_ID ) {
62+ if (!fboName .equals (DEFAULT_FRAME_BUFFER_NAME )) {
63+ task = new BindFBOTask (frameBuffersManager .getFBO (fboName ).fboId , fboName );
7164 frameBuffersManager .subscribe (this );
65+ } else {
66+ task = new BindFBOTask (DEFAULT_FRAME_BUFFER_ID , DEFAULT_FRAME_BUFFER_NAME );
7267 }
7368 } else {
74- if (fboId != DEFAULT_FRAME_BUFFER_ID ) {
69+ if (! fboName . equals ( DEFAULT_FRAME_BUFFER_NAME ) ) {
7570 update ();
7671 }
7772 }
@@ -88,12 +83,11 @@ public boolean isEqualTo(StateChange stateChange) {
8883
8984 @ Override
9085 public void update () {
91- fboId = frameBuffersManager .getFBO (fboName ).fboId ;
92- task .setFboId (fboId );
86+ task .setFboId (frameBuffersManager .getFBO (fboName ).fboId );
9387 }
9488
9589 @ Override
9690 public String toString () { // TODO: used for logging purposes at the moment, investigate different methods
97- return String .format ("%21s: %s(%s) " , this .getClass ().getSimpleName (), fboName , fboId );
91+ return String .format ("%21s: %s" , this .getClass ().getSimpleName (), fboName );
9892 }
9993}
0 commit comments