Difference between revisions of "SoC Ideas Sprite Sheets2011 Sajal"

From The Battle for Wesnoth Wiki
(Questionnaire)
m (Hide historical references to Subversion from the wiki search function)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{SoC2011Student}}
+
{{SoC2011Student_2|sagi|SoC_Ideas_Sprite_Sheets2011}}
  
 
'''GSOC- 2011 Idea of representing images using sprite sheets.'''
 
 
{{SoC2011Student}}
 
  
 
=ATTENTION=
 
=ATTENTION=
Line 17: Line 13:
  
 
=IRC=
 
=IRC=
_sagi,sagi
+
_sagi,sagi,sagi_
  
=IDEA=
+
=Ideas and Problem=
  
I am a student of Computer engineering and passionate about game developing. I am developing my own game as a college project in C++ using SDL libraries. I have too implemented the spritesheets in my project as to animate the objects. Using the spritesheets, decreases your loading time appreciably. This would be noticeable on running games on mobile OS platforms such as Android.
 
  
SDL libraries allow us to create rectangle frames and "clips", so clipping out the image would not be the problem
+
Using the spritesheets, decreases your loading time appreciably. This would be noticeable on running games on mobile OS platforms such as Android.
  
=Problems=
+
SDL libraries allow us to create rectangle frames and "clips" , so clipping out the image would not be the problem.
  
The only issue which i found is :
+
The only issue which I found is :
  
 
Once a spritesheet is made, it becomes tedious for the developers to edit the images packed in it. For the initial stage we can define Macros arrays(of size 4) containing the x-y coordinates and their respective width and height.This way devs will become aware of the frames and their images. Later , we could work upon developing a widget to select the frames from the given image-spritesheet.By selecting the frame , Devs could work upon the particular image.
 
Once a spritesheet is made, it becomes tedious for the developers to edit the images packed in it. For the initial stage we can define Macros arrays(of size 4) containing the x-y coordinates and their respective width and height.This way devs will become aware of the frames and their images. Later , we could work upon developing a widget to select the frames from the given image-spritesheet.By selecting the frame , Devs could work upon the particular image.
Line 37: Line 32:
 
1.1) Write a small introduction to yourself.
 
1.1) Write a small introduction to yourself.
  
 +
I am a student of Computer engineering and passionate about game developing. I am developing my own game as a college project in C++ using SDL libraries.
  
 
1.2) State your preferred email address.
 
1.2) State your preferred email address.
 +
 +
nightwalker1990@gmail.com
 +
 
1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?
 
1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?
 +
 +
sagi_
 +
 
1.4) Why do you want to participate in summer of code?
 
1.4) Why do you want to participate in summer of code?
 +
I want to participate in project in developing game particularly in C++(and preferably using SDL libraries). This way I could give all the knowledge I have gained in two years and will experience the open source world which I am very passionate about.
 +
 
1.5) What are you studying, subject, level and school?
 
1.5) What are you studying, subject, level and school?
 +
Computer Engineering , College
 
1.6) What country are you from, at what time are you most likely to be able to join IRC?
 
1.6) What country are you from, at what time are you most likely to be able to join IRC?
 +
India. For now, I am available after evening, but for the summer I would be available for the whole day.
 
1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.
 
1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.
 
+
NO.
 
2) Experience
 
2) Experience
 
2.1) What programs/software have you worked on before?
 
2.1) What programs/software have you worked on before?
 +
 +
1. C++ programs and building data structures.
 +
2.Experiencing SDL game development
 +
3.GTK+3 in C for creating widgets.
 +
4. Python
 +
 
2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)
 
2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)
 +
 
2.3) Have you participated to the Google Summer of Code before? As a mentor or a student? In what project? Were you successful? If not, why?
 
2.3) Have you participated to the Google Summer of Code before? As a mentor or a student? In what project? Were you successful? If not, why?
 +
No. This is my second year. For the first year I did not have any base to make me consider as a student of GSOC.
 +
 
2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.
 
2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.
 +
No.
 
2.5) Gaming experience - Are you a gamer?
 
2.5) Gaming experience - Are you a gamer?
 +
Yes.
 +
 
2.5.1) What type of gamer are you?
 
2.5.1) What type of gamer are you?
 +
 +
As a gamer, I am quite addictive to all the games.
 
2.5.2) What type of games?
 
2.5.2) What type of games?
2.5.3) What type of opponents do you prefer?
+
Strategy games such as Age of empires. Even action and sports game excites me a lot.
 
2.5.4) Are you more interested in story or gameplay?
 
2.5.4) Are you more interested in story or gameplay?
 +
Gameplay.
 
2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.
 
2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.
We do not plan to favor Wesnoth players as such, but some particular projects require a good feeling for the game which is hard to get without having played intensively.
+
yes I have played wesnoth, about a year ago.
2.6) If you have contributed any patches to Wesnoth, please list them below. You can also list patches that have been submitted but not committed yet and patches that have not been specifically written for GSoC. If you have gained commit access to our SVN (during the evaluation period or earlier) please state so.
 
  
 
3) Communication skills
 
3) Communication skills
 
3.1) Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English.
 
3.1) Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English.
 +
I can read, write and speak in English
 
3.2) What spoken languages are you fluent in?
 
3.2) What spoken languages are you fluent in?
 
+
Hindi, English.
 
3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.
 
3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.
 +
I have worked under a small team, so exchange of advices and suggestions wont be a problem.
 
3.4) Do you give constructive advice?
 
3.4) Do you give constructive advice?
3.5) Do you receive advice well?
+
Yes, sometimes.
3.6) Are you good at sorting useful criticisms from useless ones?
+
 
3.7) How autonomous are you when developing ? Would you rather discuss intensively changes and not start coding until you know what you want to do or would you rather code a proof of concept to "see how it turn out", taking the risk of having it thrown away if it doesn't match what the project want
 
  
 
4) Project
 
4) Project
4.1) Did you select a project from our list? If that is the case, what project did you select? What do you want to especially concentrate on?
+
4.1) Did you select a project from our list?  
4.2) If you have invented your own project, please describe the project and the scope.
+
 
 +
Yes, the spritesheet project seems to be quite interesting.
 +
 
 
4.3) Why did you choose this project?
 
4.3) Why did you choose this project?
4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like "I booked holidays between A and B" and "I got an exam at ABC and won't be doing much then".
+
 
4.5) Include as much technical detail about your implementation as you can
+
As mentioned, I am too developing a game which I would complete before the summer holidays.I want to contribute all my learnings to the open source game. I found that Battle For Wesnoth suited me well as it demanded the things which I am working upon.
 +
 
 +
4.4) Include an estimated timeline for your work on the project.  
 +
 
 +
My exam will most probably end on May 15th. From May16th , I would understand the source code, the community and will start discussing the idea with more details.
 +
From May20:Start converting images into spritesheets manually. Hope it will not take much of time.
 +
On May 22 : Will work upon the source code and edit source for loading 2 spritesheet instead of multiple images. Also will define Macros for x-y coordinates and width/height.
 +
till May 30 : Test , bug and submit the patch regarding the same.
 +
 
 +
From June 1 : Will start editing the image-editing tool to our own needs. It would be a waste of time if we start from scratch. (Will discuss it before May20)
 +
 
 +
Till the End of Summer : Will Test it, provide documentation and polish the code. If we our still left with the time, we will add objects to the game using our designed tool :) .
 +
 
 +
 
 
4.6) What do you expect to gain from this project?
 
4.6) What do you expect to gain from this project?
 +
 +
It would provide me the base code for the Battle of Wesnoth and I could work upon it in future too.
 
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?
 
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?
 +
 +
My contribution to the Wesnoth community.
  
 
5) Practical considerations
 
5) Practical considerations
 
5.1) Are you familiar with any of the following tools or languages?
 
5.1) Are you familiar with any of the following tools or languages?
Subversion (used for all commits)
+
 
C++ (language used for all the normal source code)
+
Yes I have familiar with Sub­­version , C++ ,SDL.
STL, Boost, Sdl (C++ libraries used by Wesnoth)
+
 
Python (optional, mainly used for tools)
+
Got a little knowledge about python
build environments (eg cmake/scons)
+
No idea about WML.
WML (the wesnoth specific scenario language)
+
 
Lua (used in combination with WML to create scenarios)
 
 
5.2) Which tools do you normally use for development? Why do you use them?
 
5.2) Which tools do you normally use for development? Why do you use them?
 +
 +
I use Git repositories more often than S­­V­­N as it is simpler,faster , smaller and moreover allows to clone the whole repository. Hope to see Battle for Wesnoth source codes in git in near future.
 
5.3) What programming languages are you fluent in?
 
5.3) What programming languages are you fluent in?
5.4) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail. If you are willing to do so, please do list a phone number (including international code) so that we are able to contact you. You should probably *only* add this number in the application for you submit to google since the info in the wiki is available in public. We will *not* make any use of your number unless some case of "there is no way to contact you" does arise!
+
 
 +
C, C++ .
 +
5.4) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail.  
 +
 
 +
Okay I will submit my phone number in Google Apllication.
 +
 
 +
=SoC Application=
 +
[http://www.google-melange.com/gsoc/proposal/review/google/gsoc2011/sajal/1 SoC Application]

Latest revision as of 03:01, 21 March 2013


This page is related to Summer of Code 2011
See the list of Summer of Code 2011 Ideas



This is a Summer of Code 2011 student page
Project: SoC_Ideas_Sprite_Sheets2011



ATTENTION

GSOC- 2011 Idea of representing images using sprite sheets.

Description

Sajal- Implementation of images using spritesheets

The idea is to implement a spritesheet for loading images instead of individual png images.Basically, the idea is to design two seperate spritesheet - one for the characters and the other for objects in the environment.It would be flexible and have multiple-sized images.

The 2 spritesheets would be a large png image. If possible,a tool to merge images into a spritesheet would be created, so as to skip the "copy-paste" process . This will also enable other users to add the characters of their choice- which they could design via photoshop/other image-editing programs.

IRC

_sagi,sagi,sagi_

Ideas and Problem

Using the spritesheets, decreases your loading time appreciably. This would be noticeable on running games on mobile OS platforms such as Android.

SDL libraries allow us to create rectangle frames and "clips" , so clipping out the image would not be the problem.

The only issue which I found is :

Once a spritesheet is made, it becomes tedious for the developers to edit the images packed in it. For the initial stage we can define Macros arrays(of size 4) containing the x-y coordinates and their respective width and height.This way devs will become aware of the frames and their images. Later , we could work upon developing a widget to select the frames from the given image-spritesheet.By selecting the frame , Devs could work upon the particular image.

May be we could use GTK+ to create widget. We will modify the source codes of particular image-editing program to our own needs. It would be quite helpful. I have worked upon GTK+ in Gnome contibution.

Questionnaire

1) Basics 1.1) Write a small introduction to yourself.

I am a student of Computer engineering and passionate about game developing. I am developing my own game as a college project in C++ using SDL libraries.

1.2) State your preferred email address.

nightwalker1990@gmail.com

1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?

sagi_

1.4) Why do you want to participate in summer of code? I want to participate in project in developing game particularly in C++(and preferably using SDL libraries). This way I could give all the knowledge I have gained in two years and will experience the open source world which I am very passionate about.

1.5) What are you studying, subject, level and school? Computer Engineering , College 1.6) What country are you from, at what time are you most likely to be able to join IRC? India. For now, I am available after evening, but for the summer I would be available for the whole day. 1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when. NO. 2) Experience 2.1) What programs/software have you worked on before?

1. C++ programs and building data structures. 2.Experiencing SDL game development 3.GTK+3 in C for creating widgets. 4. Python

2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)

2.3) Have you participated to the Google Summer of Code before? As a mentor or a student? In what project? Were you successful? If not, why? No. This is my second year. For the first year I did not have any base to make me consider as a student of GSOC.

2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement. No. 2.5) Gaming experience - Are you a gamer? Yes.

2.5.1) What type of gamer are you?

As a gamer, I am quite addictive to all the games. 2.5.2) What type of games? Strategy games such as Age of empires. Even action and sports game excites me a lot. 2.5.4) Are you more interested in story or gameplay? Gameplay. 2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer. yes I have played wesnoth, about a year ago.

3) Communication skills 3.1) Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English. I can read, write and speak in English 3.2) What spoken languages are you fluent in? Hindi, English. 3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough. I have worked under a small team, so exchange of advices and suggestions wont be a problem. 3.4) Do you give constructive advice? Yes, sometimes.


4) Project 4.1) Did you select a project from our list?

Yes, the spritesheet project seems to be quite interesting.

4.3) Why did you choose this project?

As mentioned, I am too developing a game which I would complete before the summer holidays.I want to contribute all my learnings to the open source game. I found that Battle For Wesnoth suited me well as it demanded the things which I am working upon.

4.4) Include an estimated timeline for your work on the project.

My exam will most probably end on May 15th. From May16th , I would understand the source code, the community and will start discussing the idea with more details. From May20:Start converting images into spritesheets manually. Hope it will not take much of time. On May 22 : Will work upon the source code and edit source for loading 2 spritesheet instead of multiple images. Also will define Macros for x-y coordinates and width/height. till May 30 : Test , bug and submit the patch regarding the same.

From June 1 : Will start editing the image-editing tool to our own needs. It would be a waste of time if we start from scratch. (Will discuss it before May20)

Till the End of Summer : Will Test it, provide documentation and polish the code. If we our still left with the time, we will add objects to the game using our designed tool :) .


4.6) What do you expect to gain from this project?

It would provide me the base code for the Battle of Wesnoth and I could work upon it in future too. 4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?

My contribution to the Wesnoth community.

5) Practical considerations 5.1) Are you familiar with any of the following tools or languages?

Yes I have familiar with Sub­­version , C++ ,SDL.

Got a little knowledge about python No idea about WML.

5.2) Which tools do you normally use for development? Why do you use them?

I use Git repositories more often than S­­V­­N as it is simpler,faster , smaller and moreover allows to clone the whole repository. Hope to see Battle for Wesnoth source codes in git in near future. 5.3) What programming languages are you fluent in?

C, C++ . 5.4) Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail.

Okay I will submit my phone number in Google Apllication.

SoC Application

SoC Application

This page was last edited on 21 March 2013, at 03:01.