• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.

DominicHughes

Members
  • Content count

    119
  • Joined

  • Last visited

Community Reputation

143 Neutral

About DominicHughes

  • Rank
    Member
  1. Finally copyed a block of pixels now just need to do that 10-20 times and move the orginal and copyed pixels up and down ,position them correctly , and wala pixelated water :D then going to figure out how to smooth it http://i.imgur.com/vEuD9.png
  2. [quote name='Servant of the Lord' timestamp='1351989728' post='4997034'] [quote name='DarkHorseKnight' timestamp='1351938434' post='4996816'] Your drawing a rectangle for the water right then altering the pixels on that rectangle how?[/quote] No, I'm creating an empty surface, then altering the pixels on that surface. I then draw the altered surface onto the screen. [quote]Why are we comparing surfaces?[/quote] I'm not comparing surfaces, I'm altering one surface (updating it every 1/10th of a second), and drawing it onto the screen (a second surface) every frame. [quote]How are you setting the area of which the pixels values can be gotten and placed elsewhere?[/quote] I'm not setting the area, I'm passing in the surface to the WritePixel() and ReadPixel() functions. I'm getting and reading pixels from a surface. Actually, to be more exact, I didn't do any pixel-reading at all, just writing. In SDL, a "surface" is a image that exists in memory. I'm editing that image; I'm not editing the screen. I'm editing the image, then I'm drawing the image onto the screen. Quote a line of code, then ask about any specific line of code you have questions about - make sure your specify exactly what part you don't understand. [/quote] Okay so [CODE]return pixels[offset + x];[/CODE] how does return of pixels[offset + x]; work exactly? Why are you locking surfaces to access pixels to stop tearing or something? this function below makes a rect filling it with a user defined color yes? [CODE] void DrawRectangle(SDL_Surface *destination, const SDL_Color &color, SDL_Rect *rect = NULL) {SDL_FillRect(destination, rect, SDL_MapRGB(destination->format, color.r, color.g, color.b));} [/CODE] this code is fairly hard to grasp the technical concepts [CODE] SDL_Surface *CreateEmptySurface(int width, int height, SDL_Surface *surfaceToCompareTo){ SDL_Surface *newSurface = SDL_CreateRGBSurface(surfaceToCompareTo->flags, int width, int height, surfaceToCompareTo->format->BitsPerPixel, surfaceToCompareTo->format->Rmask, surfaceToCompareTo->format->Gmask, surfaceToCompareTo->format->Bmask, surfaceToCompareTo->format->Amask); if(!newSurface) {std::cerr << "CreateEmptySurface() - Something went wrong creating a " << width << "x" << height << " surface.\n" << " Error: " << SDL_GetError() << std::endl;} //Let's start off filling it with a solid color, like solid white. DrawRectangle(newSurface, SDL_Color(255, 255, 255)); return newSurface;} [/CODE] What does this do from a technical point of view [CODE]SDL_Surface *waterImage = CreateEmptySurface(50, 50, screen);[/CODE] This code below is oddly written what does that all mean ? [CODE]void MakeWaterSurface(SDL_Surface *surface, unsigned int frame){ //We only have 20 frames, so keep within range. frame %= 20; int offset = frame; if(offset >= 10) { //0 1 2 3 4 5 6 7 8 9 10 9 8 7 6 5 4 3 2 1 offset = (10 - (offset - 10)); } SDL_Color colors[] = {SDL_Color(100, 150, 190),SDL_Color(100, 160, 180),SDL_Color(100, 170, 170),SDL_Color(100, 180, 160),SDL_Color(100, 190, 150), SDL_Color(100, 190, 170),SDL_Color(100, 190, 190),SDL_Color(100, 190, 210),SDL_Color(100, 190, 230),SDL_Color(100, 220, 250)}; for(int y = 0; y < surface->height; y++) { for(int x = 0; x < surface->height; x++) { //I'm coding blind without a compiler, so I have completely no idea if this will work or not. int waveDepth = ((y + offset) % 10); int waveHorizontalOffset = ((x + (offset/3)) % 20); int waveVerticalOffset = ((x + waveHorizontalOffset) + offset); unsigned colorIndex = (waveDepth + waveVerticalOffset) % 10; WritePixel(x, y, colors[colorIndex], surface); } }}[/CODE] Theres still more for me to look at but this is as far as I've gotten in trying to understand not used any of this yet. [quote][/quote]
  3. Been working on The Fish Pond game finally onto the pixel animated cinematic introduction sequence then will work on the player whilst still working on silly platformer which is taking alot of code learning.
  4. I generally have no idea about all of this accept my 2 functions , it would be awesome if someone could do like a simplist explanation on all this new stuff so I can see and know whats going on . Your drawing a rectangle for the water right then altering the pixels on that rectangle how? Why are we comparing surfaces? How are you setting the area of which the pixels values can be gotten and placed elsewhere? yes a full explanation is required ! [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img]
  5. [i]1) What type of pixels are you looking to "detect"? Are they a certain color?[/i] Image pixels as in the pixels in the PNG Image which is RGBA 32bpp "That could be wrong format". [i]2) What type of pixels do you consider "garbage"? What makes them "garbage" - their color or some action?[/i] There garbage if a pixel value and location is left-over after one pixel value is gotten and placed in a different location. [i]3) You said detect "around" the area of the garbage pixel. What does "around" mean? One pixel around? Two pixels around?[/i] Detect the pixels around the area as in any area I specify could be 40 by 40 pixels or 100 by 100 pixels. [i]4A) Could you also explain, carefully (it takes me some time to understand ), what it is, in detail, that you are wanting (and why)?[/i] To make a wave effect by moving 40 by 40 pixels up and down in a png image. So I can have a decent and cool water effect without loading in each frame of animation of a Adobe After Effects Water Animation . [i]4B) How are you currently attempting it?[/i] I don't actually know the code to get rid of pixel in a png image which has already been found from pixelget which puts in a different location with the pixel found by the function pixelget. [i]5A) What is the correct result that you'd like?[/i] 1.) having user-defined way to put in the x and y values of the area of pixels 2.) to find and place the pixels in a different location using the x and y values. [i]5B) What is the wrong result your current attempt is giving you?[/i] Well I can get values and place them somewhere else but not automatically and in a area specified by me in the x and y .
  6. Servant the lord : I know I have to redraw over it but how can I detect the pixels around the area of the garbage pixel automatically? I don't know the code to do it.
  7. Hi all I'm able to draw pixels in many ways and get pixel values and place them somewhere on the screen surface but when It happens the left over pixel is still there and I was hoping someone could show me code and explain how to remove it from the screen surface here is my code to draw and to get pixels : [CODE] #include <SDL/SDL.h> #include <SDL/SDL_image.h> #include <math.h> #undef main int y = 10; int x = 10; int x2 = 40; int y2 = 40; SDL_Surface *Screen = SDL_SetVideoMode(640,480,32,SDL_SWSURFACE), *Image; void pixeldraw(int x, int y , int color) { unsigned int *ptr = static_cast <unsigned int *> (Screen->pixels); int offset = y * (Screen->pitch / sizeof(unsigned int)); ptr[offset + x] = color; } unsigned int pixelget(int x, int y) { unsigned int *ptr = static_cast <unsigned int *> (Screen->pixels); int offset = y * (Screen->pitch / sizeof(unsigned int)); return ptr[offset + x]; } int main(int argc , char *argv[]) { SDL_WM_SetCaption("Image Pixel Manipulation", "PM"); Image = IMG_Load("image.png"); //unsigned int *src0 = (unsigned int *) Image->pixels + y * //Image->pitch; SDL_FillRect(Screen,NULL,(0,0,0)); pixeldraw(10, 10, 0x0000FF); unsigned int color = pixelget(10, 10); pixeldraw(x2,y2, color); printf("%08x\n", color); //unsigned int *pixels = (unsigned int*) Screen->pixels; //unsigned int color = pixels[y * (Screen->pitch / /sizeof(unsigned int)) + x]; // pixels[y2 * (Screen->pitch / sizeof(unsigned int) + x2] = color; //src0[1] = 0; bool done = false; SDL_Event event; while(!done) { //SDL_BlitSurface(Image,NULL,Screen,NULL); while(SDL_PollEvent(&event)) { switch(event.type) { case SDL_QUIT: return 0; break; } } SDL_Flip(Screen); } return 0; } [/CODE] any tips and suggestions are also welcome although this was intended as a test case not a perfect example of coding grammatically and correctly per-say of my ability. Thanks for anyone who reads this .
  8. Just finished the player movement mostly in my platformer game just gotta round out a few edges and glitches then I literally can work on the first level and this will get finished without worry or doubt what so ever . :) chocobo racer is on halt till I come up with a solution.
  9. SPAMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM...
  10. no matter how hard life gets keep going you will understand why eventually ;)