Git Product home page Git Product logo

volt2d's Introduction

Volt2D

What is Volt2D?

Volt2D is a simple 2D game engine, developed for my own game.
You would probably noticed it's very similar to Cocos2D and yes that is true.
This project was inpsired by Cocos2D and started for my college final project at Dec. 2014.
After then, I decided to keep work on this while I graduate my college.

Platform

OS X (Primary)
Win32 (Secondary)

Language

C++
Lua

volt2d's People

Contributors

bsy6766 avatar

Stargazers

 avatar

Watchers

 avatar

volt2d's Issues

Texture doesn't supports blank texture

Objects that uses texture must be rendered as blank texture or invalid texture(check pattern with pink and black colors) to let user know that texture isn't working.

JumpBy action position offset

Need to fix JumpBy action's position movement calculation due to finishing action with sprite's position off by a little, which ends up sprite in wrong position after some jump actions

initializing Sprite action schedule

sprite action schedule class receives a list of sprite actions, as a vector, then cast to derived action class and clone it, which seems unnecessary.

Since spriteActionSchedule class only maintains the pointers of action and deletes on termination, there is no reason to waste time by making action objects static in GameManager and cast to pointer.

Sprite animation's texture

Sprite animation class contains multiple texture objects to render each frame of animation.
We can group up and pack each texture into one sprite sheet and swap UV or use divide UV attribute.

Action checking

Some actions are made for specific classes.
For instance, ProgressFromTo action is made for ProgressObject, not Text or Sprite.
However since all action inherited by same base class, there is issue where some objects having wrong type of actions, for example, Sprite can have ProgressFromTo but there's nothing to update about it.

For now, I'm just gonna kill action on start if target isn't right.
Maybe, I will use enum to tell which type of action is object trying to use, but I'm not big fan of enum in c++ like Java.
Or I can discard all actions that is not right to use, but if I don't use enum, I have to down cast and it's expensive task to check multiple actions through out game.

It will be best practice me to use correct action to correct object but yeah...

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.