Untitled - 2D hand-drawn atmospheric RPG

youtube link

Hello everyone. The video and the title should give you a general idea of what kind of project I’m working on.
It’s a style of game I’ve been wanting to make since I was a teenager. In other words, hand-drawn environments and pixel art characters, in the style of “SaGa Frontier 2” and “Legend of Mana” on PlayStation in the late 90s.
What is currently being done is everything you see in the video.

I’m having problems securing development funding, but otherwise things are going well. Most of all, I’m happy to have finally found a style that I’m (reasonably) happy with in terms of art. If you like it, I am very pleased.

I’ll report again when there is progress. Thank you!

31 Likes

It looks fantastic! Please continue to share updates here.

3 Likes

It has been a while. No major progress in development. This is just a small technical tip.

As you all know, when creating a pixel art game in defold, all you have to do is change the “Texture filtering and sampling” from linear to nearest in game.project > Graphics, but in the case of my game However, my game has a mix of normal resolution backgrounds and pixel art characters. In this case, what should I do to render the screen beautifully?

After some experimentation, my conclusion is that I can get the desired results by rendering the pixel art sprite as nearest and linear for the others.
How to do it. It is simple, just change the Samplers of the material attached to the pixel art sprite as follows

Screenshot 2023-10-09 at 15.09.30

In my environment, it can only be displayed in this hard-to-see state. For reference, the code is pasted below.
(sprite.fp and sprite.vp are not modified.)

sprite.material
name: "sprite"
tags: "tile"
vertex_program: "/sandbox/player/sprite.vp"
fragment_program: "/sandbox/player/sprite.fp"
vertex_space: VERTEX_SPACE_WORLD
vertex_constants {
  name: "view_proj"
  type: CONSTANT_TYPE_VIEWPROJ
}
fragment_constants {
  name: "tint"
  type: CONSTANT_TYPE_USER
  value {
    x: 1.0
    y: 1.0
    z: 1.0
    w: 1.0
  }
}
samplers {
  name: "texture_sampler"
  wrap_u: WRAP_MODE_REPEAT
  wrap_v: WRAP_MODE_REPEAT
  filter_min: FILTER_MODE_MIN_NEAREST_MIPMAP_NEAREST
  filter_mag: FILTER_MODE_MAG_NEAREST
  max_anisotropy: 0.0
}
max_page_count: 0

One problem with this method is that when the camera is zoomed in/out, linearly drawn objects (in my case, other than the character, i.e., background) are sometimes blurred. To solve this problem, control the zoom value with a precise value, such as 0.5, 0.75, or 1.25, to avoid blurring.

Maybe I can render this more cleanly with the Sharp Sprite - RGSS for Defold, but for now I will continue to develop it as is.

4 Likes

No big progress. If I don’t post anything, it could give the misconception that the project is dead, so I’ll post a few images and videos.

A bit of concept art

Proposed changes to the design of the main character


An experiment in perspective

The background is all hand-drawn, but what should the camera position be? This is a video about the problem of how the camera should be positioned.

The relationship between pixel art character and background perspective is quite flexible. In other words, the character’s perspective does not have to strictly follow the background’s perspective. I knew this in theory, but experimenting in this way made it clear. My conclusion is that as long as the camera position is not too extreme, there is a great deal of freedom in the camera position and composition of background art.


Test shot with color on the rough. There should not be much discomfort about the perspective.


P.S. To reduce the load on the defold forum server, I have changed the host of the video to my own website.

14 Likes

looks dope af

1 Like