Jump to content
  • Advertisement

Search the Community

Showing results for tags '2D'.

The search index is currently processing. Current results may not be complete.


More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Categories

  • Audio
    • Music and Sound FX
  • Business
    • Business and Law
    • Career Development
    • Production and Management
  • Game Design
    • Game Design and Theory
    • Writing for Games
    • UX for Games
  • Industry
    • Interviews
    • Event Coverage
  • Programming
    • Artificial Intelligence
    • General and Gameplay Programming
    • Graphics and GPU Programming
    • Engines and Middleware
    • Math and Physics
    • Networking and Multiplayer
  • Visual Arts
  • Archive

Categories

  • Audio
  • Visual Arts
  • Programming
  • Writing

Categories

  • Game Dev Loadout
  • Game Dev Unchained

Categories

  • Game Developers Conference
    • GDC 2017
    • GDC 2018
  • Power-Up Digital Games Conference
    • PDGC I: Words of Wisdom
    • PDGC II: The Devs Strike Back
    • PDGC III: Syntax Error

Forums

  • Audio
    • Music and Sound FX
  • Business
    • Games Career Development
    • Production and Management
    • Games Business and Law
  • Game Design
    • Game Design and Theory
    • Writing for Games
  • Programming
    • Artificial Intelligence
    • Engines and Middleware
    • General and Gameplay Programming
    • Graphics and GPU Programming
    • Math and Physics
    • Networking and Multiplayer
  • Visual Arts
    • 2D and 3D Art
    • Art Critique and Feedback
  • Community
    • GameDev Challenges
    • GDNet+ Member Forum
    • GDNet Lounge
    • GDNet Comments, Suggestions, and Ideas
    • Coding Horrors
    • Your Announcements
    • Hobby Project Classifieds
    • Indie Showcase
    • Article Writing
  • Affiliates
    • NeHe Productions
    • AngelCode
  • Topical
    • Virtual and Augmented Reality
    • News
  • Workshops
    • C# Workshop
    • CPP Workshop
    • Freehand Drawing Workshop
    • Hands-On Interactive Game Development
    • SICP Workshop
    • XNA 4.0 Workshop
  • Archive
    • Topical
    • Affiliates
    • Contests
    • Technical
  • GameDev Challenges's Topics
  • For Beginners's Forum
  • Unreal Engine Users's Unreal Engine Group Forum
  • Unity Developers's Forum
  • Unity Developers's Asset Share

Calendars

  • Community Calendar
  • Games Industry Events
  • Game Jams
  • GameDev Challenges's Schedule

Blogs

There are no results to display.

There are no results to display.

Product Groups

  • Advertisements
  • GameDev Gear

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me


Website


Role


Twitter


Github


Twitch


Steam

Found 500 results

  1. phil67rpg

    OpenGL rotate ship

    I have a very simple question, I am trying to rotate some vertex's around an arbitrary axis. basically I want to use glRotatef and glTranslatef to rotate a space ship I have drawn on the screen. here is my code of my ship. what it does do is rotate around the origin when I use the arrow keys left and right. void drawShip() { glPushMatrix(); glColor3f(255.0f, 0.0f, 0.0f); glTranslatef(-50.0f, 0.0f, 0.0f); glRotatef(rotateship, 0.0f, 0.0f, 1.0f); glBegin(GL_LINE_LOOP); glVertex3f(50.0f, 0.0f, 0.0f); glVertex3f(45.0f, -5.0f, 0.0f); glVertex3f(50.0f, 10.0f, 0.0f); glVertex3f(55.0f, -5.0f, 0.0f); glEnd(); glTranslatef(50.0f, 0.0f, 0.0f); glPopMatrix(); }
  2. RoKabium Games

    Red resources

    From the album: SAMA

    The red hued resources you can find in SAMA is mostly on the pink and brown side of red, but the Quarky is as bright and deep red as it comes!
  3. Hello and welcome to this weeks dev diary! Today I'll show a couple of ways to slice up your images into smaller portions, one that doesn't require any plugins and one that need you to download a script. The following tutorial uses the default settings for GIMP, just like a fresh installation with no previous installations that might have retained some of your old settings. The GIMP Version is 2.10.12 The Manual Way Slicing the image manually can be really work intensive, depending how many parts you want to slice your image to and is by no means an efficient way to do it, but will suffice for anyone who wishes to divide their image to 4 x 4 tiles or less. 1. When you have loaded up the image you want to slice into smaller pieces, go to image > Guides > New Guide... 2.a When you click on the "New Guide..." the following box appears. 2.b Now you have to do some math and divide your image into as many parts as you want. You have to do this both horizontally and vertically as many times as you need guides. For this tutorial I'll make the image into 4 x 4 tiles, meaning 3000x3000 pixels in size, as per 12000 / 4 = 3000 - this means that I need to space all the guides 3000 pixels apart from each other, adding 3000 to each position. i.e. the first guide to 3000, the second guide to 6000, and the third guide to 9000. 3. After you have added your guides, your image should look like this; 4. Go to Image > Slice Using Guides - Click it and GIMP will divide the image for you into separate images and switch your view to the last piece. The original image will still be intact. GIMP will use the same filename that your original file has, but add to the row and column number to the end of the name, like seen in the above image filename, on the top right corner. Original filename in this example is; M5213A-texture-12000x12000.png The last piece has an addition at the end of it; M5213A-texture-12000x12000-3-3.png The below image showcases how GIMP organizes the tiles. First number represents the Column and the second number represents the Row; 5. Save each image separately, by going to File > Export As... (or using shortcut of Shift + CTRL + E). The file extension is the same as the original file's, so no need to change any setting when saving the files. The default export path is the one that the original image resides in, so you may want to create a new folder for the image slices. There is also several plugins that helps with saving multiple tabs in GIMP. The Much More Automated Method 1. First, download these plug-ins; ofn-layer-tiles Export Layer 2. Install both plugins into C:\Users\"Your-Username"\AppData\Roaming\GIMP\2.10\plug-ins Note that the "2.10" folder is the version of the GIMP you have installed and will change after each update that changes the first or second version number. Now your plug-ins folder should have these files. 3. After opening GIMP and your image file, remove the ".png" from your layer name. This will ensure that the "Export Layers" plugin names the layers correctly. 4. Go to Layers > Tiles > Split tiles (by rows and columns)... 5. Choose how many rows and columns you want, no need to change other settings, unless you want to specify different naming schemes. Read the plugin instructions for more information on that. For the purpose of this tutorial, I will be splitting the image into 4 x 4 tiles, just like before. By default, the slicing process named the files with the same logic as GIMP, the first number represent the Column and the second one is the ROW. The only difference is, that the plugin starts the numbering from 01 instead of 00, that GIMP starts from. This can be changed in the settings how ever, if this is important to you. To make the numbering start from 0, change "{column1:02d}-{row1:02d}" to "{column0:02d}-{row0:02d}". 6. Press the "OK" button and the plugin will change the image into separate layers. 7. Go to File > Export Layers... Choose the folder you would like to save the images to and your preferred file format. After you are done, click "Export". The Plugin will save each layer as a file and depending on the size of your original file, this could take some time. Conclusion For my needs, these plug-ins are gems. I'm just surprised how come GIMP does not include these kind of functionalities out of the box. But then again, open source programs tend to rely more on community to add more functionality to the core program in the form of plug-ins and scripts. One thing that should be a out-of-the-boc functionality, is the "Save All" option for saving all open documents easily and fast. Hope this was of use to you and I'll see you on the next one! You can check out every possible mid week announcements about the project on these official channels; • YouTube • Facebook • Twitter • Discord • Reddit • Pinterest • SoundCloud • LinkedIn •
  4. Welcome to our twenty-sixth blog post! In this post, we’ll be discussing the Drake, a creature skilled in ambushing, whom requires one to focus greatly, in order to be adequately prepared for when it does strike. Hunting it is large part of the battle- it does not always simply charge, attack, escape. Its much more crafty. It waits for the moment to strike. Which can come at any time- during a fight, or simply standing at the ready. The mechanics based around this fight is that we desired a boss which would strike somewhat randomly, while one is exploring the land. It can either be relentless, attacking repeatedly and predictably, or escape for a while, not to strike again until it has been discovered. Discovery is not predictable- its long vision ensures it will come at random times, at a random angle. Sometimes, it can’t even be found at all, and you’ll have to search for it. As we begin to expand our Research system, we imagine this boss will be more on the optional side, yielding good rewards should you choose to chase after it. The Drake’s movement is quick and forceful, aiding its ability to escape. While out of view, it becomes invisible, and hard to detect easily. As such, utilizing the land around, and your array of warriors to surround this creature is the best and most fundamental strategy for defeating it. It relies on continuing its momentum to break through a wall of units, but a strong surround can end that. An even greater method of keeping it at bay is to freeze it in place. The Apprentices of Water plays a key role here: its Water Bolt spell roots a hit foe to their location for a few moments, stopping it completely. This can play a great role in surrounding, and keeping it from escaping. The Drake’s main method of escape is its teleport- a long cooldown spell, but with great range. This allows it to rapidly escape from any unfavorable engagement, to return again later for a more favorable one. It can even outright vanish with this, to somewhere far away outside of its normal aggro radius, forcing player to hunt it further. --- Thank you for viewing our post! Support and interest for the project has been rapidly growing ever since we began posting here, and we're incredibly grateful for all the wonderful feedback so far! We hope this project interests you as much as we love developing for it, and please look forward to more updates coming in the very near future! If you’re brand new, consider checking out our trailer and overall description of the game here.
  5. I have two curves. One handdrawn and one is a smoothed version of the handdrawn. The data of each curve is stored in 2 seperate vector arrays. Time Delta is also stored in the handdrawn curve vector, so i can replay the drawing process and so that it looks natural. Now i need to transfer the Time Delta from Curve 1 (Raw input) to Curve 2 (the already smoothed curve). Sometimes the size of the first vector is larger and sometimes smaller than the second vector. (Depends on the input draw speed) So my question is: How do i fill the whole vector PenSmoot.time with the correct interpolated values? Case 1: Input vector is larger PenInput.time[0] = 0 PenSmoot.time[0] = 0 PenInput.time[1] = 5 PenSmoot.time[1] = ? PenInput.time[2] = 12 PenSmoot.time[2] = ? PenInput.time[3] = 2 PenSmoot.time[3] = ? PenInput.time[4] = 50 PenSmoot.time[4] = ? PenInput.time[5] = 100 PenInput.time[6] = 20 PenInput.time[7] = 3 PenInput.time[8] = 9 PenInput.time[9] = 33 Case 2: Input vector is smaller PenInput.time[0] = 0 PenSmoot.time[0] = 0 PenInput.time[1] = 5 PenSmoot.time[1] = ? PenInput.time[2] = 12 PenSmoot.time[2] = ? PenInput.time[3] = 2 PenSmoot.time[3] = ? PenInput.time[4] = 50 PenSmoot.time[4] = ? PenSmoot.time[5] = ? PenSmoot.time[6] = ? PenSmoot.time[7] = ? PenSmoot.time[8] = ? PenSmoot.time[9] = ?
  6. I've worked through loading of cut-scene data from the JSON files, and am now figuring out how I want to load cut-scene assets. I'm mostly typing up this blog entry as a way of documenting this to myself. Cause thinking through this is a little bit hard. 😓 When you hear "cut-scene", you might be thinking that I'm just going to play a video file before each level to provide some narration. Nope, I wanted to make use of the game engine instead. Cut-scene definitions are kind of like scripts that indicate which map to display, have the snake move around the map, make things appear, etc. on a timeline. My hope is that this will make cut-scenes feel like you're part of the narration... Many games we play will pre-render video files, often looking way better than the game itself -- I've always felt like I'm being taken out of the game when this happens. In my head, the opening of story mode will show the snake moving through several areas before reaching the first playable map. Background music will play, some narration occurs, and then the game begins. Anyway, the challenge I'm facing now is that I decided to allow cut-scene definitions specify as many maps as the level designer chooses. Currently, the "StoryLevelAssetBundle" class I wrote only allows for the level's main map and its textures to be stored. I now have to expand that to store multiple maps across potentially up to three cut-scenes (one played before the level, another if the player loses, and another if the player wins). It's also possible -- even likely -- that the same textures will appear across those maps. It's even possible that the same map could appear several times. So here's what I figure I need to do... Note that I'm using the phrase game map in an attempt to distinguish it from the C++ unordered_map. Loop through each cut-scene's event list to find all the references to game maps. Load the game map definitions for them, probably keeping them in a std::unordered_map, keyed by game map filename. It's probably still best to keep the level's playable game map asset separate -- during game play we want it easily accessible. Loop through each game map definition, in order to load all the game map-related textures. To avoid loading the same texture multiple times, keep all textures in a std::unordered_map, also keyed by game map filename. If a texture has previously been loaded, we'll now know. While looping through the game map definitions, we can also store the floor and barrier texture references in separate std::unordered_map's, keyed by floor or barrier ID. However, the values will be pointers to the sf::Texture objects previously loaded. I believe the game maps used within cut-scenes will need to be in a nested container structure. Now that I have that written down, time to implement it! I've worked out in my head exactly how the silly "Adam's Revenge" story will go, and I'm really looking forward to getting over this hump of being able to play opening cut-scenes before each level. We have our Thanksgiving weekend here in Canada, and this is how I'll be spending it (well, the non-family part of it at least). 🤣 The fate of the world is in your scales...
  7. Graphic Artist Opportunity If you’re an artist and have ever thought about game development, but were hesitant about actually doing it, this is the perfect opportunity for you. There’s no commitment and moderate pixel art skills are probably all you need to bring to the table. Cube Universe is a game that has been in development for 5 years. It has combat, crafting, world building, quests, RPG skills and abilities, travel between planets and it’s multiplayer… it’s a fully functional game with a dedicated developer behind it all. It’s a science fiction, fantasy sandbox game where magic and technology meet. It’s alien and mystical. There’s no limit to what can be in the game and that means a lot of room to express yourself as an artist. When I say pixel art skills are required for a 3D game, let me explain the current process of how content can be created in Cube Universe. Cube Universe comes with a built-in editor. It allows you to build structures (like a house, a castle, a spaceship, or a sacrificial temple to the moon god of a primitive culture) using the game world’s terrain blocks (which you can also create different kinds of). It also features a modeller that allows you to create more intricate furniture, lively creatures and decorations (like a fireplace, a holographic console, a bookshelf, or a laboratory table bubbling with the craziest potions imaginable). Note: A terrain block is 0.5 metres cubed. When modelling, a 0.5 metre block is 16x16x16 voxels. Each voxel allows for 4x4 pixels on each face. It’s all about speeding up the process though; getting your ideas into the game world as quickly as possible. Cube Universe’s editor can import MagicaVoxel ( https://ephtracy.github.io/ ) models and it keeps the color information for texturing. MagicaVoxel is an amazingly simple and powerful voxel modelling/coloring tool that’s completely free to use. The next step is to add minor details through the Cube Universe editor using it’s built-in paint tools. You can import your own palette and paint until you’re satisfied. At this point everything is kept simple on purpose because the texture can now be imported into your preferred paint program as a PNG file. In this case, GIMP ( https://www.gimp.org/ ) is being used to change colors faster and paint the wood grain. It’s easy to see how the sides of the model are represented in the PNG file, but this process might require you to go back and forth a bit between GIMP and the editor to texture around corners and such. After you’re satisfied, you can run any filters in GIMP over your textures and you’re done! The nice thing when creating content is that the game supports shadows and ambient occlusion, which creates a darkening around seams and let’s you keep your textures simple while the game adds shading. The most time consuming part of the process is usually the texturing. A 30 minute model could typically take 2 hours to texture, for example. The focus of this game’s graphics is to create content easily with a pleasant appeal. The texture style is purposely simple to keep things as economical as possible. The modelling is where you want to spend the most time being creative and I believe that focus will make for an enjoyable experience creating content for Cube Universe. Once you have a handle on static models, Cube Universe’s editor also exports bones, meshes and UV maps to Blender ( https://www.blender.org/ ) for animation all in a DAE (Collada) file. Animation is it’s own thing and we’d love to have someone who is familiar with basic Blender bone animation, but that is not a prerequisite for this recruitment phase. This is how the creatures are animated though. And you can only model so many tables and teleporter pads before you get the itch to try making a wild half-monster, half-robot abomination that strikes fear into the player from a 100 metres away. This is what drives artists to learn more technical things; torturing the player creating engaging experiences for the player. At the end of the day, that’s what game development is about; learning new skills, pushing yourself a little out of your comfort zone and making wild ideas into a digital reality. I’ve written this recruitment post from my own perspective with the project. I’m not an experienced game artist, but I’m having a blast making stuff and learning new techniques. I’ve even learned new things about the software I thought I was already familiar with. And that’s where the fun in development comes from. Also, you won’t be alone. This is a team effort and helping each other is a crucial part of that. We'll help you get started and share any tips and tricks with you to make your life easier on this project. If you’ve made it this far, you’re definitely wondering about payment. At this point, all that can be offered is revenue sharing. If you are looking at this as an opportunity to retire on a tropical island, you’ll most likely be disappointed. If you view this as a way to experience 3D game development in probably the most accessible way possible, then I believe you’ll enjoy your time on the project. You’ll receive a copy of a cool sandbox game and some money when sales are made down the road. The details can be discussed further with the developer directly. You’ve probably noticed that all the software an artist needs is free to download. Got a computer? You’re good to go! The developer is passionate about this game and has implemented a lot of features in the editor to accommodate speed and flexibility for you, the artist. Discord messaging is the primary way to communicate and stay connected to the project. Google Drive is used for all file sharing and asset backup. That’s all the online accounts you require to join the team and start creating. Currently the game is for sale on the official website ( https://www.beosar.com/games/cubeuniverse/ ), but it’s not quite ready for a marketing push yet. With sandbox games, content is king and Cube Universe needs your help. If you’re new to game development, you'll gain some important skills and experience to help you with future endeavors. If you know someone who might be interested in the graphic side of games, please mention this opportunity to them and let them decide if this is right for them. Lastly, if you know all this stuff already and have lots of experience, well let’s see what you got, tough guy! C’mon, I dare you! 😉 Feel free to ask questions in this thread. Otherwise, you can contact Beosar ( https://www.gamedev.net/profile/221978-beosar/ ) here on GameDev.net for further information. If you prefer Discord, Beosar#8149 is what you'll need.
  8. Rubikon

    #ScreenshotSaturday: Animations Inc!

    This week we spent some time in #aseprite and brought our main character to life. Look at him go 😀 https://rubikon.dev/ https://www.reddit.com/r/Rubikon_Game/ https://twitter.com/GameRubikon https://www.instagram.com/rubikongame/
  9. RoKabium Games

    Cargo Bay tabs

    From the album: ScreenShotSaturday

    For this Screenshot Saturday we're showing the different tabs in the Cargo Bay where you can find all Minerals, Gems, Gases, Artefacts and Fossils you have in your inventory.
  10. SnowPuzzleDesign

    Looking for Artist

    I'm looking for an artist interested in making an indie game. I'm not looking for a paid artist, but instead a partner in the game. Equal say in it, equal pay if it makes any money, and someone to bounce ideas off of. My goal is to make the most incredible mash-up, of a metroid-vania and a puzzle platformer, that any one has ever seen. I've always been really good at puzzle design, and I recently started trying to make a metroid-vania game because it's a good game type. I can't draw in any way shape or form, so I'm really trying to find someone that can. I'm still in very early stages of anything plot related with the game, so it'll all be up for discussion still. Any response is greatly appreciated, my email is snow532000@gmail.com
  11. I'm working on my first Android game and I have a few questions. I need to scale the graphics for different screen sizes/resolutions. I'm working in 16:9 and plan to use letter boxing to maintain this aspect ratio. Everything is fine for standard screen resolutions. Going from 320:180 to 640:360, one pixel just becomes four. I'm a little confused though as to what happens when you letterbox on a screen with a unusual resolution. Say, just for exsample, my original graphics are 160:90. Then to fit the devise I stretch everything by 1.1 and end up with a final resolution of 176:99. Its still 16:9 but now everything is a mess. If I had a sprite that used to be at x-33 y-33 it's new location would now be at x-36.3 y-36.3. Would I just drop the 0.3 of a pixel, round down and accept that it's no longer in its exact position? Secondly what exactly happens when you stretch images by an amount like 1.1? How dose it decide what pixels to add to the image to make it bigger?
  12. Hi, I want to start a team with the goal of creating a simple game this will be good project experience for working together The game can be 2d or 3d, might have multiple programmers I'm thinking a medieval/Egyptian theme fantasy possibly I will want one or two writers if needed, and we all may contribute to the storyline I think characters and dialogue can work really well-Zelda,Diablo,Neverwinter nights for example Looking for Artist Writer Musician Programmer Sound ok? My name's dougie If you're interested contact me here on the forum or email me: sound_of_solos@hotmail.com, but beware I might not see your email because my inbox is loaded. I'm a C++ programmer and I use Unreal Engine as my engine of choice so I'll be the project lead most likely
  13. I have worked on this problem for several days. I have almost solved my problem. I have got my sprite to move up and down continuously using the mouse. this done by using the glutTimerFunc function. I want the mouse to get the sprite to move up and down once. I have googled and debugged my code. I have also taken some JavaScript code and ported it over into opengl. let me know if you need my question to be more specific. here is my code so far. bool onGround = false; void StartJump() { if (onGround) { velocityY = -12.0f; onGround = false; } } void EndJump() { if (velocityY < -6.0f) { velocityY = -6.0f; } } void Update() { velocityY += gravity; positionY += velocityY; positionX += velocityX; if (positionY > 25.0f) { positionY = 0.0f; velocityY = 0.0f; onGround = false; } } void Loop(int val) { Update(); drawSprite(); glutPostRedisplay(); glutTimerFunc(33, Loop, 0); } void mouseClicks(int button, int state, int x, int y) { if (button == GLUT_LEFT_BUTTON && state == GLUT_DOWN) { StartJump(); } if (button == GLUT_LEFT_BUTTON && state == GLUT_UP) { EndJump(); } } void handleKeypress(unsigned char key, int x, int y) { switch (key) { case 27: exit(0); break; case 32: Loop(0); break;
  14. EchoCell

    2D Engine Advice

    Hello folks! I’m looking for advice on which engine I should go with for a 2D game I want to make. The goal is to make a side-scrolling beat’em up/2D fighting game hybrid where the main levels are in beat’em up mode, but the boss battles are in 2D fighter mode. The combat controls (combos, special moves, etc) would be the same in both modes, and the game would include a tournament mode that is entirely in 2D fighter mode. I have minimal game developing experience, and am essentially a noob. I am mostly familiar with RPGMaker, but have also experimented lightly with Unity. I have zero programming knowledge, and thus am partial to engines more accessible to complete beginners. What engine(s) would be best suited to this kind of game? I am interested in both M.U.G.E.N and OpenBOR, but I don’t think either would allow the kind of genre-crossing I want to accomplish without significant programming skills that I don’t have. Also - and I realize I’m thinking too far ahead - I would like to be able to release this game via HTML5 and just host it online somewhere if possible. Otherwise I am okay with it being PC only. Thank you for your time and input! -Autumn
  15. brullov

    2D [Announcement] Crimed Noir