Giter Club home page Giter Club logo

cocos2d-iphone's People

Watchers

 avatar

cocos2d-iphone's Issues

add Texture Atlas support

Loading 1 image at a time can be tidy must it is not efficient GPU-wise.
So, adding Texture Atlas support can improve the performance of drawing
repetitive images, like tiles, sprites, etc...

Original issue reported on code.google.com by [email protected] on 2 Oct 2008 at 6:53

add primitives: circle, poly

Add these primitives to the engine:
 . draw circle
 . draw segment
 . draw poly

with the possibility of changing color and width.

Original issue reported on code.google.com by [email protected] on 24 Jun 2008 at 9:13

chipmunk-accel demo does not work with latest chipmunk

Nothing bounces in the chipmunk-accel demo due to an issue with the latest
chipmunk not being backward compatible with the previously integrated
version of Chipmunk.  

I have raised the issue (#3) on the chipmunk project issues page but in the
meantime to work correctly the following line of code needs to be added
after Chipmunk_Accel.m:61

    space->elasticIterations = space->iterations;

In fact for now, if you want elasticity to work, that line must be added
following any calls to cpSpaceNew()

The reason is the latest version of chipmunk separates the two iterators
and defaults the elasticIterations to 0 instead of using the same value
that is used for iterations which is 10;

Original issue reported on code.google.com by [email protected] on 7 Oct 2008 at 6:32

System time changes can stop timers

I've seen this a couple of times on the actual device, not in simulator 
(although by setting time 
on the machine back I can simulate the same thing).. Im guessing it has a 
background process 
that updates the system time once in a while.

What happens is that system time can be adjusted back or forward and if its 
backwards it stops 
the Sheduler for X seconds or minutes (since dt will be negative). 

Not sure how to fix this except that the NSTimer that runs the whole system 
seems to be 
unaffected. Is there something different than "gettimeofday" to use? [NSDate 
time] is also 
changing and I used that to keep time within the game which was a bad idea, but 
relying on delta 
time will also fail :(

It can be simulated on the simulator as well.

What steps will reproduce the problem?
1. Run a program with timers on the simulator
2. Put the Mac clock backwards an hour.
3. See the scheduler stuff stop.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 19 Aug 2008 at 3:50

Chimpmunk has lost its chipmunk bounce

After converting from cocos2d-0.4.3 to cocos2d-0.5.0 objects that used to
bounce nicely now "stick" to each other.

I realize its not a cocos2d bug per se but the newly integrated version of
Chipmunk is possibly broken.

In any case its no good to use in my game.

Original issue reported on code.google.com by [email protected] on 7 Oct 2008 at 4:29

LabelAtlas (or Fast Labels)

Labels are great but they can't be updated in realtime since they are very
expensive to create.

Provide a way to update labels in realtime without consuming CPU

Original issue reported on code.google.com by [email protected] on 5 Oct 2008 at 10:57

fps_image.png consumes a lot of texture memory

What steps will reproduce the problem?
1. the fps_image.fps (the atlas) is too big for the tiles that it contains
2. it should be much, much smaller so that it doesn't consume the expensive
texture memory.
3.


Please use labels and text to provide additional information.
v0.5.0

Original issue reported on code.google.com by [email protected] on 14 Oct 2008 at 3:14

Passing arguments to MenuItem callbacks

What version of the product are you using? On what operating system?
0.4.3

Please provide any additional information below.

 It would be great if an additional argument "context" could be passed to
the MenuItem callbacks along with the "sender" argument that is already
being passed. This argument (of type "id") could contain useful data that a
developer may wish to pass to the callback instead of writing several
slightly different callbacks.

Original issue reported on code.google.com by [email protected] on 23 Sep 2008 at 5:49

It would be nice to have Flip Transitions in the opposite directions

I like the FlipXTransition but it seems to only go from right to left.  It
would be nice to also be able to easily flip in the Opposite direction.  

Like so, which seems to work:

//
// FlipMinusX Transition
//
@implementation FlipMinusXTransition
-(void) start
{
    [super start];

    [inScene setVisible: NO];
    IntervalAction *inA = [Sequence actions:
                           [DelayTime actionWithDuration:duration/2],
                           [Show action],
                           [OrbitCamera actionWithDuration: duration/2 radius: 1
deltaRadius:0 angleZ:-270 deltaAngleZ:-90 angleX:0 deltaAngleX:0],
                           [CallFunc actionWithTarget:self selector:@selector(finish)],
                           nil ];
    IntervalAction *outA = [Sequence actions:
                            [OrbitCamera actionWithDuration: duration/2 radius: 1 deltaRadius:0
angleZ:0 deltaAngleZ:-90 angleX:0 deltaAngleX:0],
                            [Hide action],
                            [DelayTime actionWithDuration:duration/2],                          
                            nil ];

    [inScene do: inA];
    [outScene do: outA];
}
@end


A similar FlipMinusYTransition would be good to.


Original issue reported on code.google.com by [email protected] on 8 Sep 2008 at 10:17

Click and Move crashes at ClickAndMove.m:52

What steps will reproduce the problem?
1. Launch Click and Move
2. Touch the screen
3. Uncaught exception

What is the expected output? What do you see instead?
The sprite should stop moving

What version of the product are you using? On what operating system?
Latest svn from today

Please provide any additional information below.
The line 52:
    [s stop];

Needs to be replaced with;
    [s stopAllActions];

Since CocosNode does not implement stop


Original issue reported on code.google.com by [email protected] on 31 Aug 2008 at 9:41

CallFunc does not retain its target.

I was getting crashes in calls to released objects.
I made this change and they went away.
(Accidentally posted to the python bug list :) )


-(id) initWithTarget: (id) t selector:(SEL) s
{
    self = [super init];

    targetCallback = [t retain]; // SJI
    selector = s;
    return self;
}

- (void)dealloc;
    {
    [targetCallback release];  // SJI
    [super dealloc];
    }


Original issue reported on code.google.com by [email protected] on 7 Oct 2008 at 5:01

Add support for disabled menu items

What version of the product are you using? On what operating system?
0.4.3

Please provide any additional information below.

 There should be support for disabled menu items for e.g. locked modes in a
game so that user can see them, but can't play them since they are locked.

Original issue reported on code.google.com by [email protected] on 23 Sep 2008 at 8:05

Adding sender to menu items selector

What steps will reproduce the problem?
1. Creating menus means creating a method for each menu item

What is the expected output? What do you see instead?

It would be nicer to have it work in a similar way as IBActions where-by the 
menuitem themselves 
are sent along to the selector. Combine this with a integer tag on the menu 
items and its easy to 
distinguish which menuitem has been clicked on.

An alternative is just to have the tag, as this is a game library you might 
want to do that for speed, 
I'm not sure.

Original issue reported on code.google.com by orta.therox on 4 Sep 2008 at 5:40

Add support for menu separators

What version of the product are you using? On what operating system?
0.4.3

Please provide any additional information below.

 cocos2d should have separators supported in its menus so that related
options may be grouped together

Original issue reported on code.google.com by [email protected] on 23 Sep 2008 at 9:03

Enhancement: Tile Layer engine

Since this is geared towards 2d gaming, maybe a Tile type engine to create 
backgrounds would be 
an interesting addition.


Original issue reported on code.google.com by [email protected] on 1 Aug 2008 at 11:44

Timer invocation needs to retain its target

When a node gets deleted, like in a game when the enemy is shot, the timers
for that node can and will fire after the node is deleted.
This leads to a call to a deleted object and a crash.
I attempted to remove the scheduled timers when deleting the object, but
this can't be done since I need to delete them during my own timer callback
and the scheduler array can not be modified while it is being iterated over.

To fix this, the invocation object needs to retain the target so if it is
deleted, at least it won't crash.


in this method:

-(id) initWithTarget:(id) t selector:(SEL)s interval:(ccTime) i

I added:

[invocation retainArguments];

Original issue reported on code.google.com by [email protected] on 1 Oct 2008 at 4:24

Need the abiliy to playback short audio clips

A game without audio is like a day without orange juice.

Is it possible to add the OpenAL support by wrapping SoundEngine.cpp and
SoundEngine.h files from the CrashLanding sample.

Original issue reported on code.google.com by [email protected] on 8 Sep 2008 at 11:27

removing a CocosNode with an action that is about to finish will crash

What steps will reproduce the problem?
1. Create Node
2. Add an action that will last 2 seconds
3. 2 seconds later remove the node

What is the expected output? What do you see instead?
Node shall be removed without problems
But cocos2d crashes instead.

Please use labels and text to provide additional information.
using r210

Original issue reported on code.google.com by [email protected] on 8 Sep 2008 at 9:13

copy not working on certain actions

What steps will reproduce the problem?
Actions that contains actions like Sequence, Spawn, Repeat, Speed,
Accelerate & AccelDeccel are not copying the inner action when the [action
copy] selector is executed.

For example:
id seq = [Sequence actions: action1, action2, nil];
id seq_copy = [seq copy];


What is the expected output? What do you see instead?
Inner actions shall be copied


Please use labels and text to provide additional information.
v0.4.3

Original issue reported on code.google.com by [email protected] on 1 Oct 2008 at 2:12

Enhancement- Orientation Detection

Any game usually make use of both the portrait and landscape of the iphone.
It would be very useful to detect the orientation of the phone when changed
from portrait to landscape or vice-versa.


Thanks
Ashar

Original issue reported on code.google.com by [email protected] on 4 Sep 2008 at 5:16

fire timer has a problem

What steps will reproduce the problem?
1. Schedule a repeating action, for say 30 fps.
2. If the fire: call in the scheduler is called LESS than 30fps then the
elapsed time keeps increasing and becomes inaccurate.
Elapsed should probably always get reset to 0, since that is how much time
elapsed anyway.


-(void) fire: (ccTime) dt
{
    elapsed += dt;
    if( elapsed >= interval ) {
        [invocation setArgument:&elapsed atIndex:2];
        [invocation invoke];

        // save the difference
        if( interval )
            elapsed -= interval;
        else
            elapsed = 0;
    }
}


Original issue reported on code.google.com by [email protected] on 28 Sep 2008 at 6:08

Chipmunk sources are outdated

The Chipmunk's sources that are shipped with cocos2d are *very* outdated.
cocos2d ships v4.0.2. cocos2d shall use svn Chipmunk's version which has a
lot of bug fixes.

Original issue reported on code.google.com by [email protected] on 3 Oct 2008 at 1:45

Flip buffer issue

I have on occasion flip buffer issues on the device itself. It seems to be 
related to what's 
described in http://www.idevgames.com/forum/showthread.php?t=15323 but I cannot 
repro it 
consistently and it only happens on the device and not on the simulator.

Director.m hardcodes the pixelformat to kEAGLColorFormatRGB565 ... Maybe this 
can be 
changed or configurable?

----- Director.m

- (id) initWithWindow: (UIWindow *) _window
{
    window = _window;
    winSize = window.bounds;

    // Switched pixelFormat http://www.idevgames.com/forum/showthread.php?t=15323
    if( ! [super initWithFrame:[window bounds] pixelFormat:kEAGLColorFormatRGBA8] )
        return nil;


Original issue reported on code.google.com by [email protected] on 25 Jul 2008 at 11:26

Empty MenuItem in Layer Init

Using the latest svn, if you place an empty MenuItem in a layer init
function (I use it to separate 2 menu entries), when you start the app in
the simulator it hangs up 10 -> 30 seconds before showing

To reproduce the issue, just modify the MenuTest example adding
MenuItem *empty = [MenuItem itemFromString: @"" receiver:self
selector:@selector(menuCallback2)];

and

menu = [Menu menuWithItems: empty, item1, item2, item3, item4, item5, nil];

The issue was not showing in version 0.2, it appeared today after updating
to the latest svn.
If you place an empty MenuItem in another function (not the Init one) the
app works fine.

Original issue reported on code.google.com by [email protected] on 23 Jul 2008 at 12:20

Tile Map Support

Support a way to render tile maps.

Format supported:
http://www.imitationpickles.org/pgu/wiki/index

Original issue reported on code.google.com by [email protected] on 5 Oct 2008 at 10:55

particle system not exporting all variables

What steps will reproduce the problem?
1. Particle system needs more properties like: gravity, size, sizeVar


What is the expected output? What do you see instead?
The particle system needs to be more customizable. So all the variables
needs to be properties.

Please use labels and text to provide additional information.
v0.5.0

Original issue reported on code.google.com by [email protected] on 14 Oct 2008 at 3:03

display FPS consumes resource

the current display FPS consume some resources while rendering the FPS
since it creates a new texture every time it needs to display the FPS.

LabelAtlas should be used instead since it doesn't consume resources.

Original issue reported on code.google.com by [email protected] on 6 Oct 2008 at 1:12

add support to dynamically create menus

What version of the product are you using? On what operating system?

0.4.3

Please provide any additional information below.

 Right now, Menu is initialized with menu items at compile time e.g. [Menu
menuWithItems: item1, ..., nil], however, it becomes quite cumbersome when
we have to create a menu where a lot of options can be added/removed based
on game state, for example:

consider we have a game that can be saved to disk, and we also have a hard
mode available that is only unlocked after user has completed the game in
normal mode. Now on the menu screen, we have to take two decisions:
- Should "Continue" be displayed (true if a saved game is found)
- Should "Hard" be displayed (true if user has completed the game in normal
mode).

It would be great if the above problem could be implemented with something
like:

if(canContinue == YES) {
    [mainMenu addItem:continue];
}
if(canPlayHardMode == YES) {
    [mainMenu addItem:hard
}

I hope it can be easily implemented =)

Original issue reported on code.google.com by [email protected] on 23 Sep 2008 at 5:46

Crashes at line MenuItem.m:58 in v0.4.2

This line:
    [invocation setArgument:self atIndex:2];

At MenuItem.m:58 is causing a crash.  That line did not exist in v0.4.1

When I comment it out, things seem fine again.

Original issue reported on code.google.com by [email protected] on 11 Sep 2008 at 11:00

LabelAtlas doesn't work with tiles that are not of NxN size

What steps will reproduce the problem?
1.LabelAtlas doesn't work if the altas image size is not a square (nxn)

What is the expected output? What do you see instead?
It should work with any kind of image size.

Please use labels and text to provide additional information.
v0.5.0

Original issue reported on code.google.com by [email protected] on 14 Oct 2008 at 3:40

Doxygen documentation is broken

Since version 0.4.0 the doxygen documentation is broken.
CocosNode & Director methods are not displayed in the API reference.
It seems that Doxygen doesn't like 'splitted' classes.

Original issue reported on code.google.com by [email protected] on 1 Oct 2008 at 11:09

Deallocation of node children issue

What steps will reproduce the problem?
1.In my node init method I create a repeating action to do some animation
of my sprite, like so:
 SpriteAnimation *animation = [SpriteAnimation animationWithDuration:0.5
from:1 to:numFrames];
 [self do:[Repeat actionWithAction: animation times:0]];

2. When I dispose of my scene, or remove this sprite node from the scene,
it never gets deallocated since this animation action has retained the
sprite node.


The reason this happens is because when a layer is deallocated it does not
ensure its children have all actions removed before deleting its array of
children. It must clean up its children or they will not be released.

One solution I found is to in CocosNode to have the cleanup of actions done
in a method "cleanup", then before disposing of the children, get them to
perform that selector.

Something also needs to be done for scheduledSelectors, but I have no need
of cleaning that up at the moment so did not look into it.

- (void)cleanup;
    {
    // actions
    [actions release];
    actions = nil;
    [actionsToRemove release];
    actionsToRemove = nil;
    [actionsToAdd release];
    actionsToAdd = nil;
    }

- (void) dealloc
{
    // attributes
    [camera release];

    // children
    [children makeObjectsPerformSelector:@selector(cleanup)];
    [children release];

etc



Original issue reported on code.google.com by [email protected] on 27 Sep 2008 at 5:41

the action 'Animation' should be able to restore or not the original frame

The action 'Animation' always displays the original frame after finishing
an animation. There are certain cases where you don't want that.

So, Animation shall have another parameter like:

+(id) actionWithAnimation:(Animation*) a restoreOriginalFrame:(BOOL)b;


And if restoreOriginalFrame is NO then, the animation shall not restore the
original frame.

This parameter is optional. If it is omitted it shall be YES. 

Original issue reported on code.google.com by [email protected] on 8 Oct 2008 at 11:50

AtlasNode is rendering with artifacts

What steps will reproduce the problem?
1. Run the AtlasDemo.
2. You will see some artifacts in some tiles
3.

What is the expected output? What do you see instead?
No artifacts

Please use labels and text to provide additional information.
v0.5.0

Original issue reported on code.google.com by [email protected] on 14 Oct 2008 at 3:01

Touch events doesn't come from statusBar area

Touch events doesn't come from (0, 460, 320, 20) rect in portrait mode and from 
(0, 0, 20, 320) 
rect in landscape mode. 

Original issue reported on code.google.com by notOrca on 23 Sep 2008 at 3:26

Colored MenuItem

It would be very nice to have the possibility to choose the color of a
MenuItem.

Thanks

Original issue reported on code.google.com by [email protected] on 23 Jul 2008 at 7:08

particles doesn't blend with backgrounds different from black

What steps will reproduce the problem?
1. Add a particle system to a white background.

Orta reported that this patch might help:
"""
I had the same issue, till I commented out these lines of code:

//  glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
//      glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
//      glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);

I can't claim to know what the reason is, but doing so hasn't
negatively effected my game and I did this about a week or two ago.
"""

Original issue reported on code.google.com by [email protected] on 1 Oct 2008 at 11:19

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.