/agdg/ - Amateur Game Development General

Just Like Make Game

SAVE THIS FILE: Anon.cafe Fallback File v1.1 (updated 2021-12-13)

Want your event posted here? Requests accepted in this /meta/ thread.

Max message length: 20000

Drag files to upload or
click here to select them

Maximum 5 files / Maximum size: 20.00 MB

no cookies?
Board Rules

(used to delete files and postings)

Open file (9.80 KB 600x407 comfy_cirno.png)
RULES AND F.A.Q. Deveropa 09/13/2019 (Fri) 18:35:00 ID: 9e9ecb No.15 [Reply]
1. Follow the Global Rules 2. The Board is SFW, so spoiler any mature content 3. That's pretty much it But wait, there's more! 4. This thread will work as a META THREAD for the rest of the board. Feel free to post your complaints and questions here. Please use the meta thread: >>1 3. Obey the spirit of the rules, not just the letter. Please be constructive in your comments and critiques. Try to be positive and supportive without pandering or cheerleading. Any obvious board disruption, shit-flinging, crab-bucketing, or nigger-pilling will be removed. 4. As of 03/27/2023, post IDs have been disabled. We're all adults here, we shouldn't need them in order to carry out discussions. Please be mature and don't samefag or accuse others of the same without basis. 5. Have fun. The board was set up merely a bunker and repository for developers, waiting for 8chan to come back online, but since it's in the process of committing sudoku, this could be your new home. List of other bunkers: http://8agdg.wikidot.com/general:bunkers
Edited last time by nviridescens on 03/27/2023 (Mon) 02:58:47.
11 posts and 3 images omitted.
Where's that link that explains what happened to the agdg community after the exodus? About splitting into groups and whatnot? I can't find it.

Open file (1.24 MB 1920x1080 jam.png)
6/6 GAME JAM Planning / 2D Platformer Research Thread Newt Board owner 05/11/2023 (Thu) 10:31:58 No.603 [Reply]
Alright faggots, as I mentioned in the meta thread recently, I would like to start doing board game jams on a regular basis. Unlike other jams that just give you a theme and a ridiculously short deadline and then you're on your own, the game jams here will come with a ready-to-go, runs out-of-the-box codebase so that any participant will have a working, playable game from day one (however bare-bones and exactly like everyone else's it is). You may choose to use the provided code base if you want, but you're free to bring your own as well. Think the code is ass? Does something you don't want or need? Rewrite it then, I don't care. The provided code is simply to bring as many people up to speed as quickly as possible, as well as to provide a common ground for collaborating with and assisting one another. The first /agdg/ Game Jam game will be making 2D platformers - no theme or gimmick restriction, it can be whatever. The provided game skeleton will use Raylib for graphics, sound, and input, and be written in an easy-to-grasp subset of C++ (nothing fancy or hyper-efficient). The Jam will officially start on June 6th, 2023 (6/6) and run until July 7th, 2023 (7/7), one month. By start, I mean a thread will be created and the code base, along with building instructions will be provided on that day. You are free to do whatever prep you like in the meantime, of course. 7/7 will be a "demo day" of sorts, where everyone uploads their games for others to play, and an informal competition will take place to decide the best game. I say "competition" but it's just for fun, maybe we'll come up with something stupid for the winner though. >why? For fun and practice. Do I expect any masterpieces in a month? No. Will anyone make a "real" game to put up for sale or something? I highly doubt it. What I would like to see though, is everyone at least trying - hence lowering the barrier to entry as much as possible. Can't program? Learn, you've got a whole month. All code provided will be straight-forward and well-documented as to which lines are doing what, start by tweaking that. Can't draw? See itch.io and similar for free assets. Can't do sound or music? Again, itch and the like. Do I want to see a whole bunch of Super Mario-clone asset-flips? No. Take the time to try to do something new or do something well. Can program but can't do art? Spend the month developing your art skills and pipeline, even if it means a barebones game program-wise. Are you an artist but can't code? Take the month to learn to code or collaborate with someone who can. Can do everything? Awesome, show us something new then, a novel gameplay mechanic, setting, original character, whatever. I want to see everyone push the boundaries of their skills, using the provided code as a springboard if they like. In this thread I will be gathering ideas for what constitutes the "barebones platformer", and posting my research on that, experiments, and other progress on this project. I would also like to see the thread used for general 2D plaformer discussion. What's out there? What have you played? What's state-of-the-art? What are some cool mechanics you know of? Styles - low-res/pixel, high-resolution, limited-palette, tile-based, pseudo-3D, you name it.
31 posts and 47 images omitted.
Open file (6.56 MB 804x638 output.webm)
>>651 >anonfile expired Fuck it, I just ordered one of those ~100USD mini PCs with botnet 11 on it. Gonna be a pain in the dick with no KVM switch but I'll see about getting a windows toolchain up and running on that when it gets here. >>655 >>656 Encoding as webm (VP8 and Vorbis) seems to have fixed it for me - I can hear it in the browser now.
>>663 That's looking great Newt, looking forward to the jam!
Open file (914.48 KB 3548x4096 excited.jpg)
>>663 Looks very good, getting excited. Where will you be posting invitations to the jam? A lot of places are sensitive about spam but just relying on passing traffic here doesn't seem like enough.
>>665 Thanks. A lot of compromises were made but eh, I'm just happy it more or less plays. >>666 Checked. Yeah, I gotta make some posts inviting people. Everyone is welcome though, you don't need to wait for me to formally drop a post somewhere to get the word out if you want to. >A lot of places are sensitive about spam If someone wants to get butthurt about a cross-board event invitation, let them.

Open file (1.41 MB 1536x1536 1468405570313-1.png)
QTDDTOT - The thread for all those burning Questions That Don't Deserve Their Own Thread Newt Board owner 03/27/2023 (Mon) 06:09:39 No.478 [Reply]
So up until now, we've had a lot (lol) of off-topic posting, a lot a one-and-done "how do I make game tho" posts in various threads, especially the meta and progress threads. This is now the new dumping ground for those posts. Do try to put some effort into your posts though, you'll get more responses and won't have to face the wrath of jacked Carmack and his dragon dildo sword+2 that way.
1 post omitted.
>>539 >Anybody got a good screen recording program for linux? OBS Studio (GUI, main focus is live streaming with offline recording capabilities, most features & community) SimpleScreenRecorder (GUI, focused on recording, simple to use but the most niche) FFmpeg (CLI, swiss army knife of video programs, screen capture not a primary focus but lots of documentation and generally useful) >Editing software too Olive 0.12 (GUI, hardware accelerated with OpenGL effects, most similar to tools like Adobe Premiere with major rewrite in the works) Blender VSE (GUI, single threaded, not speedy but solid like you would expect from Blender) AviSynth+ (DSL, a scripting language for video with multi threading, relies on tools like FFmpeg for playback and rendering) Melt (CLI/DSL, single threaded library that powers tools like Kdenlive with ability to run scripts, slow and buggy like the editors based on it) FFmpeg (CLI, capable of doing some editing too, doesn't have the standard features of other editors but can do some basic things)
>>540 For editing, I would just add to this Anon's excellent list Shotcut, and Kdenlive. [1] [2] 1. https://www.shotcut.org/ 2. https://kdenlive.org/
>>540 >>542 Bad ass. I'll look into them.
What's the anon-approved, non-woke, won't-randomly-delete-your-shit, code repository these days? Gitlab? Bitbucket? Gitgud? Something else I haven't heard of?
>>649 I asked myself the same question recently, since I needed to move stuff between pc and notebook. I ended up using random free ftp server and FreeFileSync to keep stuff synchronized. Even if they delete my shit, I will have 2 copies, but its very unlikely anyway.

Open file (466.59 KB 1920x1081 ClipboardImage.png)
Open file (607.59 KB 1000x1000 well.png)
Open file (6.08 MB 2000x2000 spess111.png)
Open file (3.04 MB 1000x2000 11building.png)
Blender and CGI tools Thread yesdev 05/18/2023 (Thu) 15:59:01 No.642 [Reply]
There are few layers to learning Blender, but before learning, the Main Principle is to do as little as possible to get best possible result, by using tools which blender provides. You dont draw textures on everything by hand, you use procedural textures. You dont make rigs for generic humanoids(and some animals), you use rigging addon. Also, I would say that 12+16 gb ram is required for comfortable usage of blender. You can live with 4 gb, sure, but it will not be comfortable at all, and you might never be able to use sculpting(or using displacement in textures) or make proper renders. Also, nvidia cards work better, and if you have older radeon card, its not supported by newer blender, and 2.93 is the last blender version you can use. First one, is learning how to do anything, learning interface, hotkeys, etc. Most of it is very simple, and the more you use it, the faster you will do everything. At this point you should just watch a bunch of videos on youtube, I can recommend a few channels, which mention every single button press they do. And its pretty much the only way to learn it. I would say, you need to know how to do simple modelling, adding random primitives, installing generic must-have addons, such as node wrangler, basic understanding how to render something, and basic understanding of shading, aka materials in blender, how to use hdri and basic unwrapping. Additionally, for simple modelling you need to understand why you should use quad topology. At this point after watching videos, you should be able to make a simple house, or a chair, or anything similar, and make materials for it, place a camera. You dont need to understand what you are doing, just copying what you seed others do. You probably should watch a video or two on how to optimize rendering, to save your time, you dont need 256+ samples for test render, 32 will do just fine. I cant help you at this stage, because everything is just learning which buttons to press. Next is understanding how to do more advanced stuff, like using modifiers for objects, using advanced materials, or even geometry nodes. At this point you should start to understand what you are doing. You should probably start working on a stuff you want to make, however consider it practice, not something you will end up using. I think, you should understand how to make something what you want, instead of just copying some video. You should know what modelling terms mean, like subdivide, rotate, extrude, scale, cut, add object, install the "must have" addons (they ship with blender anyway). And for materials you should understand(just play around with it) what different coordinate systems do (object, generated(aka global), uv) what textures do voronoy, perlin/noise, waves, and what bump, roughness, and displacement means. I am probably forgetting something, but all of it will be adjacent anyway. At this point you should be able to make something like a snake, with proper scales, out of curves or modelled in a couple of minutes. Or maybe use an addon to add a cat rig, model cat around it, and cover it with hair, with procedural shading. (Or naked cat, if your pc cant handle fur). And maybe even animate it. You should use core principle of "do less" and use addon to get armature with premade animation, use automatic weights and make whole animation in just a minute or two. At this point you should notice parts which your pc cant handle. Mine for example cant render volumes anymore, due to "fuck radeon cards, their drivers suck", and some other stuff. There are often ways to sidestep it, but sometimes, if you dont have enough ram, for example, there is pretty much nothing you can do to sidestep it. I would say you should be able to at least render a model with 300k vertexes, a couple of materials with varied roughness, metallic parts, bump map, hdri + a couple of lamps. I would say it is the bare minimum of using blender for gamedev. You might consider translucent/transparent/glass materials, but honestly they are not important. Requirements are lower for eevee rendering engine, and it is faster, but you likely will need cycles. I would say you should be able to make "test" renders in a minute, with low sample rate, otherwise everything will take too much time. Anyway, at this point you should probably think about making something cool via tools you are provided. Probably something based on procedural textures. For example picrelated is a model for a well, and procedural texture for it, it might look complex at first glance, but in reality its quite simple, and only uses a couple of procedural textures and some math. And model is just a cylinder. And lamp uses same model as a bucket, just with a couple of modifiers. Same with orange galaxy-like splash. Its just some camera tricks, and a couple of procedural textures mixed. Doing something like this is really not necessary for gamedev, but it is fun and educational. At this point you should start thinking about making game-ready models and exporting them to your engine. Be it 2d sprites (with that I can help a lot) or 3d models with their textures (with that I can help a little). And you should look through cc0 websites with textures, models, etc, like https://polyhaven.com/ ). For example you can spend a day trying to model a tree, or you can use an addon to generate a tree in a minute. Cont...
Open file (2.45 MB 1920x1080 tree with shadow.png)
Open file (6.37 MB 1000x1000 flamewall2.gif)
Open file (766.53 KB 1000x500 paved ground orangish3.png)
If anyone is interested in youtube channels, I can recommend some of them. For general basic modelling, lowpoly modelling, general cgi/artistic side, general blender guides and quite advanced stuff like geometry nodes+ procedural materials. More about basic principles and some tricks. I will repeat "do less, and make blender do everything for you". Blender is old so almost every problem was solved before you, so looking up how to do something will likely result in someone doing the work for you. Like with tree generation addon. You can model a tree, make textures, etc. Or you can get free tree model from some library. The only point of making your own tree is training, if you actually need a tree, get a premade/generated one. Next is, dont worry about small details, which no one ever will notice. You can find a free texture for a tree leaf, apply translucency, add subsurface scattering, and make most realistic tree leaves ever. But each leaf will be 2x2 pixels, so no one ever will notice its details. So dont bother trying to add details for something so small, it will be invisible anyway. In picrelated tree leaves are just perlin noise multiplied by "layer weight-fresnel" to get leaves of different colors, clustered like its intentional. Just a couple of nodes and colors. For example, I tried to make "proper" asphalt texture, and it was fucking waste of time. In general, you dont want to overload anything with details. Its very important, dont render to mp4/webm or any other video format, unless you use eevee and rendering takes less than a couple of minutes, and you dont care about quality. Output gets really fucking compressed, if anything stops rendering you will have to start from beginning again. So just render into a bunch of png and stich them later. While using procedural textures is slower, than prebaking everything, you should consider, how long it will take you to bake a texture vs how much rendering time it will save. Personally I only prebake AO, and only because my fucking radeon card cant render it normally. Baking textures in blender is difficult, in general. I know how to do it, but it is not ideal. For start, I dont think even latest versions of blender support hdri for baking, and you need to use lamps instead. If you are making something like lowpoly models for a game, with simple textures, without bump maps, its perfectly fine. But if you want to bake normal map into lowpoly mesh, from highpoly sculpt + prebake diffuse color, it might be very difficult, if not impossible without excessive trial. Personally I tried it a few times, and it seems to be very slow and very annoying process. Pics related is the stuff I consider myself t be good at, so if you have any questions about it, or in general, feel free to ask.
>>644 >If anyone is interested in youtube channels, I can recommend some of them. Please do, along with any other educational resources you think are useful.
Open file (2.08 MB 1920x1080 censor.png)
>>645 In general, some guides might be old, but still relevant. Dont worry if video is 10 years old, if interface looks the same as modern blender, likely nothing changed. Also, some of it is "industry standard", so its applies to a lot of other 3d software. Also a lot of them plug their commercials "here is my website where you can download all the textures and models I use", dont worry about it, man gotta eat. This guy makes guide series about blender, from the beginning. Kind of default option to start learning. He also talks about art in general, like "rules of art", "rules of animation". https://www.youtube.com/@blenderguru This guy makes lowpoly models in just a few minutes. https://www.youtube.com/@Imphenzia/videos This guy makes guides about modelling, while some of them are old, he does mention every button press, and how to do every single thing, so its a good starting point. There are a few channels similar to this, just a guy narrating every button press and what they do. https://www.youtube.com/@AlimayoArango This guy makes advanced advanced tutorials, about motion tracking, geometry nodes, shading, etc. If you want to learn how to make cool procedural materials, or procedural models, this is very good channel. Other than the very basic stuff, I mostly learned from him. https://www.youtube.com/@DefaultCube Random channels I watched, some of them are the same channel, split into a few, some of them are just professionals showing off. Worth to look at. https://www.youtube.com/@cgboost/videos https://www.youtube.com/@DECODEDVFX/videos https://www.youtube.com/@KevBinge/videos https://www.youtube.com/@cg_cookie https://www.youtube.com/@IanHubert2/videos

Message too long. Click here to view full text.

>>646 PS. Stuff about geometry nodes becomes outdated the moment you watch it. They change them a lot, since its basically experimental feature. Its more stable now, but most videos are probably outdated.
>>646 That's a handy list, thanks anon.

Open file (343.00 KB 512x512 animation planning.gif)
/meta/ thread Anonymous 09/09/2019 (Mon) 00:25:50 No.1 [Reply] [Last]
Is the original 8/agdg/ owner in charge of this board, or was it started by someone else?

Also all-purpose meta thread I guess.
100 posts and 25 images omitted.
todo: Make my own gamedev blog thread. And more importantly finish design document. Make blender thread. Or general visual asset editors thread. Someone else must make library/share thread for useful links, books, assets, data, etc. Probably could be used to comment on said subjects too. Separate share thread to share assets made by anons for anons. As soon as someone decides to share his stuff.
>>615 It would be cool to see you guys get a robowaifu simulator up and running, maybe something like that Shinobu waifu guy did a while back. >Heh Surely you're referring to >>170 right? :^)
>>634 >todo For sure. What are you working on? You doing the dungeon crawler? >blender thread Yeah, we could use one of those. I'm struggling to learn it (again) now to make assets for my isometric ARPG (currently on hold until the game jam, sorry, other ARPGfag).
>>634 >blender thread Yes please.
>>638 >Surely you're referring to >>170 right? :^) Lol, sorry I forgot about that thread completely (it obviously garnered no traction to speak of). No, actually I was referring to our own Visual Waifu thread, which does receive the occasional bump. https://alogs.space/robowaifu/res/240.html

Progress General Deveropa 04/29/2020 (Wed) 20:07:32 ID: 26606f No.123 [Reply] [Last]
Post what you're working on.
128 posts and 84 images omitted.
Open file (85.67 KB 960x720 screenshot002.png)
Open file (83.95 KB 960x720 screenshot000.png)
Open file (124.52 KB 960x720 screenshot001.png)
>>588 An attempt at lighting. Looking a little washed out, think I set the ambient light value too high. Shame too though, it appears the lighting model from here ht tps://github.com/raysan5/raylib/blob/master/examples/shaders/shaders_basic_lighting.c is Phong (per-pixel specular) and not the more period-accurate Gouraud (per-vertex). Gonna have to read up on lighting models and shader code to see if I can't change that, though I did find some code here ht tps://garykeen27.wixsite.com/portfolio/gouraud-shading that might do it.
>>589 Maybe you clipping maximum brightness for a texture. 200red50green50blue+150 white=255red,200green,200blue, which is almost white. if Can you change shader, so its capped by the original texture values? That way stuff could only become darker, but never washed out. Try rendering some gradients to look what is going on. However washed up look is quite common for simple light engine in games, like in fucking dark souls 2.
Open file (129.80 KB 960x720 srgbtexture_gamma.png)
Open file (118.72 KB 960x720 srgb_tolinear_gamma.png)
Open file (264.80 KB 1920x720 comparison.png)
Open file (88.13 KB 645x462 gimp_colorspace.png)
>>590 >clamping colors in the shader I player around with that, didn't fix it. The problem ended up being color space and gamma correction. Turns out I was using sRGB color space PNG images for the textures (which is normal for images meant to be displayed as-is on a monitor) and the final step in the fragment shader was applying gamma correction to convert from linear color space to the sRGB color space expected by the monitor. The double conversion was causing the washout. Commenting out the gamma correction resulted in something somewhat closer to correct, but that wasn't a proper fix. It turns out color and lighting calculations need to be done in linear color space for the math to work out right. The proper way to do it is to either use texture images that are already in linear color space (GIMP can do this for you, see pic related), do calculations, then gamma correct OR, use sRGB color space textures, convert to linear color space in the shader, do calculations, then gamma correct back to sRGB for display. In the side-by-side comparison shot, you can see I've done that in the 3rd and 4th pics, resulting in (virtually) identical outputs. The other images are all incorrect in some way or another. See references for more information and the shader code I borrowed for the color space conversion. The final fragment shader ended up looking like this: #version 330 // Input vertex attributes (from vertex shader) in vec3 fragPosition; //in vec2 fragTexCoord; noperspective in vec2 fragTexCoord; //in vec4 fragColor; in vec3 fragNormal; // Input uniform values uniform sampler2D texture0; uniform vec4 colDiffuse;

Message too long. Click here to view full text.

Open file (20.21 KB 128x128 ffdtex0.png)
Open file (29.66 KB 128x128 ffdtex0_linear.png)
Open file (17.42 KB 128x128 ffdtex1.png)
Open file (22.95 KB 128x128 ffdtex1_linear.png)
>>592 The textures in question - you can see the linear color space ones are darker and a bit "black-crushed". Or not, it looks like they're being converted to sRGB on upload.
>>593 Nevermind, they posted more or less ok.

Open file (3.20 KB 920x512 raylib.png)
Open file (126.94 KB 800x600 losdiabolol2.jpg)
Open file (117.51 KB 1000x750 sd2.jpg)
Open file (97.06 KB 768x576 ff12.jpeg)
ARPG project with Raylib yesdev 03/30/2023 (Thu) 03:39:45 No.486 [Reply] [Last]
Greetings and salutations, faggots. I'm currently working on a 2D, isometric-perspective action RPG. The goal is a Diablo-like, minus the Skinner-box loot pinata bullshit and adding a party system with simple but configurable AI party members - think Seiken Densetsu 2, 3 and Final Fantasy XII. I'm using C++ with Raylib as my primary graphics/input/output library, no "game engine" to speak of as yet. As I'm going through a bit of a refactor, I thought I would re-organize the project from scratch and document it here in the form of a tutorial slash dev blog. I'd like to use it to dump progress updates and code snippets, as well as for it to be a place to discuss Raylib and general RPG development. If you follow along, you should be able to build a similar game without too much difficulty. Disclaimer though - I am not a pro (game developer, I do a different kind of engineering for my day job), and am new to C++, so don't expect perfect code, best design practices, or anything like that. Stay tuned for an intro to Raylib, my project/build system, and design document.
58 posts and 107 images omitted.
Open file (240.66 KB 1024x1024 savespace.png)
Open file (359.48 KB 1284x758 attempt.png)
Open file (367.35 KB 1284x758 wouldbenice.png)
>>573 I'd just keep what you have and move on. It's fun to think about how to optimize for file size or minimum overdraw or whatever, and I made a mock-up showing a couple of different ways, but it's just not worth it at this point. Like I said before, saving tiles as PNG, either separately or packed into an atlas (I do both), and rendering them as-is, should be fine for our purposes. The PNG file format compresses nicely, especially when you have large contiguous areas. A "diamond" isometric floor tile may be 50% blank, "wasted" space, but I guarantee you its file size is not double that of one with only the visible pixels. The overdraw issue as well, is likely a non-issue, since it seems OpenGL, and probably Directx and Vulkan as well, are optimized to very quickly deal with transparent pixels, given their prevalence in 2D and 3D games. >I dont even need diamond shape, other than it being quite useful, ... You actually really do, because like you said, it's quite useful. The diamond marks the bounds of an object in 3D space, whether a tile is 1m x 1m, or whatever your scale is. It allows you to properly depth sort your static and dynamic objects quickly and easily (First, compare x and y grid coords. If they're on the same grid coordinate, compare world space x, y). It should start to come together better when we get more walls/buildings/objects in place. >tile grid and data grid will be at 45 degree angle, despite both being 2d matrix... This will absolutely fuck you. I'd like to think that, given it's long history and sheer number of games using it, that the tried and true isometric "2.5D" projection of a 3D world to a 2D screen cannot be (easily) improved upon. >subtiles I really wouldn't. Honestly, it's probably best if we moved on to gameplay and set some of the graphical stuff aside for now. I'm confident that the issues will get worked out in time. Really though, I wouldn't sweat the graphical "optimization". It's just one of many possible representations of what should be a plausible 3D space, and it's that game world and gameplay that, at least myself, need to focus on now.
>>574 Maybe I should explain the first pic. It's two different "optimizations" that one could do. The top bit is if you took your regular old rectangular texture with "diamond" visible isometric part, and UV mapped the inner diamond to a diamond-shaped quad and rendered that. This renders only the visible part, clipping the transparent bits. This eliminates the so-called overdraw problem. Still 1 texture, 1 quad. I may benchmark this compared to rendering the whole texture sometime if I get bored. The middle bit is another method: using a square texture with no transparent parts mapped to a diamond-shaped quad, such that it is rotated -45 degrees and squished to half height. Eliminates the so-called wasted space/excess file size problem but comes with major drawbacks - it's no longer "pixel perfect" 1 to 1 mapping with what is rendered to screen. You will need to use bilinear texture filtering for it to not look like total ass. Also, if you're using power-of-two texture sizes, 128x128 will be larger than a 128x64 isometric tile (and possibly look worse) and 64x64 will be smaller than a 128x64, but need to be upscaled and stretched (definitely look worse). Also, both of these "solutions" only work for perfectly flat (that is, no depth, level transitions, grass sticking up, anything) diamond "floor" tiles. As you can see, both these methods come with serious drawbacks and limitations and you will probably not see these techniques employed anymore.
>>575 >I may benchmark this compared to rendering the whole texture sometime if I get bored. From what I read, rendering a single triangle, and rendering 2k triangles is exactly the same, because of how gpu works. In fact, I suspect that textured 3d grid without shaders will render faster than my "render one 32x32 tile at a time" approach, because rendering 3d scene is done as a single cpu>gpu action, while cpu calls for rendering of each tile. But its only 4k ground tiles and for zooming out, I will use a trick, in which I render same ground tiles (but scale down data grid), but only characters will be squished. So regular 32x32 tile will look exactly the same, but instead of being 2m*2m it will represent 4m*4m. 2 tile wide road will become 1tile wide road. >using 3d Kind of pointless to me, since I use true 2d, because using 3d is much more work. If I use 3d ground(which is the most 2d thing I have) why not use 3d models for walls? And why not make ground stuff to be actual 3d modeled? And if 3d models for walls, why not use them for characters? It will be better and solve some problems, especially with animations, but its a lot of work. I suspect I will have to move to 3d, but not today. The main goals are to have an engine, which is easy to work with, and easy to make content for it, and for it to look good enough.
Open file (23.98 KB 200x200 hairy.png)
Open file (118.05 KB 1494x881 hairytiled.png)
>>577 >From what I read, rendering a single triangle, and rendering 2k triangles is exactly the same, because of how gpu works. This is true. I believe it's called batch rendering. There is a Raylib demo that demonstrates this, though it's all handled under-the-hood: ht tps://www.raylib.com/examples/textures/loader.html?name=textures_bunnymark >In fact, I suspect that textured 3d grid without shaders will render faster than my "render one 32x32 tile at a time" approach, Raylib is, and I suspect your libraries are as well, in fact, all 3D and running on the GPU (the shape-drawing functions are software, IIRC). You are using SDL right? Is there no SDLDrawQuad(Texture texture, Quad quad, Color ...) etc. function? What are you using to draw images to the screen now? >using 3d >Kind of pointless to me, since I use true 2d, because using 3d is much more work. I think you misunderstood me. Let me try again. I don't think you're retarded; I just haven't been clear enough. The worlds you and I are creating, as they exist in our minds and in our design notes, are fundamentally 3-dimensional. Buildings, fences, walls, objects, whatever, have height. Human males might be 6ft on average, whereas a goblin might be 4ft. They have height. This is all independent of how we try to present these worlds to the player. You may have bats or birds flying around. They get drawn with a Y-axis offset to show them as being above their X, Y position. In our case, we have chosen the "2.5D", "isometric" perspective to present this 3D world to the player. Why? Because the isometric perspective allows the viewer to see the front, left, and top of an object (or right, back, top, whatever, depending on its orientation). These 3 views, similar to what you might see in a 3D editor, are enough to accurately communicate something's 3-dimensional form. If something looks like a circle from those 3 angles, you know it's a sphere. If something looks like a square from those 3 angles, you know it's a cube. From a gameplay point of view as well, it allows the player to move freely in the X, Y plane, while also allowing a look at things' vertical dimension (a door in a wall, the face of an NPC, etc.) that a strictly top-down view does not. Of course, we aren't using 3D engines with 3D models to achieve this effect. I'm using pre-rendered 2D sprites just like you are, and for the same reasons that you are - it is less work. I mean, look at this asshole. My poor fucking goblin, stolen from a stock photo site and cruelly reduced to only 16 colors, is shown here jumping up and down jankily. Everything in this scene is a 2D texture, drawn on a 2D plane. The underlying asset, the Goblin(), really has a z coordinate though. I use that to determine the Y-offset to draw him at, and also the position of his shadow. In the underlying simulation, he is well and truly moving up and down. For the 2-dimensional on-screen presentation of that, I have to use some tricks. I do hope you get what I'm saying. >If I use 3d ground(which is the most 2d thing I have) You can render a lumpy, bumpy, rocky, grassy 3D terrain to a 2D texture and draw that. In fact, you're already doing it. See my edit of one of your ground tiles that exaggerates the z-axis element. You can have a 3-dimensional element to it, in this case, the rocks and grass, while still having it tile nicely (if drawn properly back to front). That's what I meant. That's the beauty of pre-rendered 3D. There are always drawbacks though - make your ground tiles too "3D" and things will look weird moving over them. >why not use 3d models for walls? And why not make ground stuff to be actual 3d modeled? And if 3d models for walls, why not use them for characters? It will be better and solve some problems, especially with animations, but its a lot of work. Well, yeah. That must have been the question Blizzard asked themselves when they started work on Diablo 3, because that game's all realtime 3D. There are strengths and weaknesses to each approach. I considered them and went with 2D. Blizzard considered them and went with 3D for D3 and D4. Realtime 3D allows for more animations, more character skins and visible items, realtime lights and shadows, and so on and and so forth.

Message too long. Click here to view full text.

>>581 >Well, yeah. That must have been the question Blizzard asked themselves when they started work on Diablo 3, because that game's all realtime 3D If I was a big studio, I would not bother with 2d. However they do optimize a lot of things, like how trees are basically a couple of 2d planes. And with normal maps, a lot of things could be 2d with shaders. >sdl draw It only can store and render textures and primitives. As far as I know, everything works like on analogue monitor, Textures are 1d array of pixels (when you reach X res of texture, it moves to the next line), which are rendered to buffer/texture. (or surface, which is like a texture, but stored in ram, not gpu). >I think you misunderstood me. Let me try again Yeah, I will have few layers, and I considered rendering some grass as part of object layer, not ground, like picrelated. Or have tiles which are "bleed out" of their boundaries. like in your 2 and 3 pictures. But I dont think I will, because I cant think of a situation I need to, except for grass. With stones I can render them in the middle of the tiles, or in object layer. And other than random stones and grass, what else belongs in the ground layer but has height? And stuff like levelchange in >>561 will be walls instead. Also, a little trick I read somewhere. Make walls and other similar tiles a little bit darker at the bottom, it helps perspective. You also can make ground tiles a little bit brighter. But second one is probably less relevant if we render everything in blender, in which case ground likely will be brighter anyway. >separate rendering and game data It cant be done completely, since everything affects each other. I decided that player character will be 200 pixels tall(or 180), which dictates how tall objects are, which dictates level of details I need, and size of tiles. And it affects how I should draw objects, like in wall ref picrelated. I will need walls to be around 6m tall, when modeling, so they will cover empty ground tiles when Z levels change, and 2.825 meters tall in some other situations. I do generate everything procedurally, but even so, its hard to change how things look, in different resolution/scale. >>558 in this I just scaled down grass texture, which turns it into green noise. I do plan to render stuff at double or triple resolution, so stuff would look better(than simply rendering at final tile resolution), but I need to know final resolution of sprite, to make details at appropriate scale, so they dont turn into mush. Its not the end of the world, to redo stuff (I have like 20 versions of differently rendered grass) but still.

Open file (160.85 KB 862x698 EUr59GcXgAIxRTx.png)
3DChan V2 Deveropa 07/06/2020 (Mon) 13:14:51 ID: eceb10 No.265 [Reply]
Hey! Here is the first a playable demo for the V2 of 3DChan: https://3dchan.net/blog/july-2020s-dev-blog/ >What is 3DChan? For those who don’t know what 3DChan is, it’s an hybrid between the imageboard culture and Second Life. >Concept of the V2 (more on my blog post) This version won’t be online, not exactly. You will be able to post files and build level in local before sharing it via bittorrent. It’s pretty close to the concept of Decentraland, but without the virtual estate agent thing. BTW, is this channel linked to the 8chan's /agdg ? I used to post here.
7 posts and 3 images omitted.
We had the same idea at different times. 3dchan.org is the successor and we hope it will find its audience
>>469 performance on Firefox 108.0.2 (64-bit) was very poor anon
>>470 thank for your feedback I'll try to improve it
>>469 oekaki over other peoples posts when?
this project is very nice IDEA. people dont know what they want until they do not see it

Open file (178.36 KB 1247x1024 tools1.jpg)
Open file (2.20 MB 1920x926 view_from_anor_londo.png)
Open file (1.89 MB 1920x927 metroid_prime.png)
Open file (1.23 MB 1920x867 highpass.png)
Open file (2.03 MB 1920x865 soldunga.png)
Tools Thread - post em up yesdev 04/23/2023 (Sun) 02:26:15 No.563 [Reply]
All-purpose tools thread - post anything you found that's useful to you. 3D/2D CAD, image editing, digital painting, animation, audio/music creation, level editing/design software, the essential game developer's toolbox. I came across these two sites a while back, online 3D game level viewers. The first is noclip: ht tps://noclip.website - a site where you can load up levels from a decent list of games and fly around in them, no-clip-mode style. Some very cool stuff in there, gives you a nice "behind the scenes" look into how your favorite game levels were put together. Definitely check out the Dark Souls maps there, absolutely brilliant. The level of detail put into far away parts barely visible is nuts, try to find all the low-poly firelink shrines there are, visible from other sections of the game. The other is a similar tool, but for Everquest maps - ht tps://eqmap.vercel.app/ . Awesome old-school, low-poly, 90's BSP/CSG-type levels, if you're into that. Check it out and get a look at the kind of claustrophobic, meandering MMORPG dungeon maps that existed before narcissistic 3rd-person cameras took over. What are you using, Anon? What's your workflow look like?

Open file (593.40 KB 1280x720 Dating sim ANNOUNCEMENT.png)
Fluffy Dating Sim Deveropa 08/06/2020 (Thu) 06:10:57 ID: 94f491 No.297 [Reply]
This is my first ever finished videogame, and I think it's worth sharing here too. It was originally supposed to be just a little joke, but when another artist joined the team the project really kicked off until it escalated into a real full-size game. Give it a try and me what you think: https://mwe.ee/FluffyDatingSim-1.0-pc.zip
Can you cut off their feet and put them in a microwave after you insemenate them??
>>472 phenomenal post

Report/Delete/Moderation Forms

no cookies?