Skip to content

Commit 8a39af7

Browse files
author
Thayer J Andrews
committed
CCEffect - Fix signed / unsigned comparison warnings when dealing with pass counts and indices
Since passes are held internally by an NSArray, make the wrapping accessor methods use NSUInteger for counts and indices as NSArray does.
1 parent 9b43680 commit 8a39af7

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

cocos2d/CCEffect.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -492,7 +492,7 @@ -(void)buildRenderPasses
492492
self.renderPasses = @[];
493493
}
494494

495-
-(NSInteger)renderPassesRequired
495+
-(NSUInteger)renderPassesRequired
496496
{
497497
return _renderPasses.count;
498498
}
@@ -512,9 +512,9 @@ - (CCEffectPrepareStatus)prepareForRendering
512512
return CCEffectPrepareNothingToDo;
513513
}
514514

515-
-(CCEffectRenderPass *)renderPassAtIndex:(NSInteger)passIndex
515+
-(CCEffectRenderPass *)renderPassAtIndex:(NSUInteger)passIndex
516516
{
517-
NSAssert((passIndex >= 0) && (passIndex < _renderPasses.count), @"Pass index out of range.");
517+
NSAssert((passIndex < _renderPasses.count), @"Pass index out of range.");
518518
return _renderPasses[passIndex];
519519
}
520520

cocos2d/CCEffectRenderer.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ -(void)drawSprite:(CCSprite *)sprite withEffect:(CCEffect *)effect uniforms:(NSM
151151
[self freeAllRenderTargets];
152152

153153
CCEffectRenderTarget *previousPassRT = nil;
154-
for(int i = 0; i < effect.renderPassesRequired; i++)
154+
for(NSUInteger i = 0; i < effect.renderPassesRequired; i++)
155155
{
156156
BOOL lastPass = (i == (effect.renderPassesRequired - 1));
157157
BOOL directRendering = lastPass && effect.supportsDirectRendering;

cocos2d/CCEffect_Private.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ typedef void (^CCEffectRenderPassEndBlock)(CCEffectRenderPass *pass);
116116

117117
@property (nonatomic, readonly) CCShader* shader; // Note: consider adding multiple shaders (one for reach renderpass, this will help break up logic and avoid branching in a potential uber shader).
118118
@property (nonatomic, readonly) NSMutableDictionary* shaderUniforms;
119-
@property (nonatomic, readonly) NSInteger renderPassesRequired;
119+
@property (nonatomic, readonly) NSUInteger renderPassesRequired;
120120
@property (nonatomic, readonly) BOOL supportsDirectRendering;
121121
@property (nonatomic, readonly) BOOL readyForRendering;
122122

@@ -136,7 +136,7 @@ typedef void (^CCEffectRenderPassEndBlock)(CCEffectRenderPass *pass);
136136
-(id)initWithFragmentFunction:(NSMutableArray*) fragmentFunctions vertexFunctions:(NSMutableArray*)vertexFunctions fragmentUniforms:(NSArray*)fragmentUniforms vertexUniforms:(NSArray*)vertexUniforms varying:(NSArray*)varying;
137137

138138
-(CCEffectPrepareStatus)prepareForRendering;
139-
-(CCEffectRenderPass *)renderPassAtIndex:(NSInteger)passIndex;
139+
-(CCEffectRenderPass *)renderPassAtIndex:(NSUInteger)passIndex;
140140

141141
-(BOOL)stitchSupported:(CCEffectFunctionStitchFlags)stitch;
142142

0 commit comments

Comments
 (0)