Giter Site home page Giter Site logo

Comments (10)

oli414 avatar oli414 commented on May 18, 2024 3

I think the pixel-art font is part of the charm at the moment. Obviously, for some characters and languages, it doesn't quite work but it looks like alternatives have already been added for that.

I think that it might be fine to keep the current font, at this resolution pixel art fonts get incredibly similar. If we do design our own font we should probably stick to the same characteristics in terms of the non-uniform width, sans-serif, and roundness.

I've done a lot of pixel art including fonts so I could give this a shot. I know someone has made "CoasterSans" but I'm personally not a fan as it is a lot lower resolution.

For the eventual higher resolution graphics pack I think it's okay to just have a different font. Trying to find/make a font that works in pixel-art, and high resolutions isn't really feasible.

from opengraphics.

zrowny avatar zrowny commented on May 18, 2024 2

I think that it might be fine to keep the current font, at this resolution pixel art fonts get incredibly similar.

I'm not a lawyer etc etc, but we're definitely legally fine with re-using the font. IP laws on fonts are kind of interesting, since they usually differentiate between the typeface, which is the design of the letterforms themselves, and a font, which is a specific implementation of a typeface. In the U.S., a typeface is absolutely not copyright-able, while most computer fonts are copyright-able, insomuch as they are a piece of "software" that gives a computer instructions on how to draw a specific typeface, but the underlying design itself is still not. A modern vector font contains all sorts of specific instructions on how to scale the shapes and spacing and hinting and etc etc, but a bitmap font (such as RCT's) is just a static representation of a typeface, and definitely is not separately copyright-able. A typeface can be protected by a "design patent", but this is fairly rare. Whatever the underlying typeface is that RCT's font is based on, it's certainly old enough that any protection, if any, has expired.

I can't speak for every country, but the laws in most of the other countries I've seen are pretty similar. For example, the UK protects typefaces for 25 years at most, and it's the same length for the EU. And again, that's the typeface, not the little low resolution bitmap representation of it. It's like if a newspaper wanted to sue a kidnapper for violating their copyright because he used cut-out letters from the newspaper to make a ransom note without permission to redistribute their font. That would be nonsense lol

TL;DR: The underlying typeface that RCT's font is based on may have had some legal protection at some point in time, but it almost certainly doesn't anymore, and the low-resolution bitmap representation of it is certainly not protected.

from opengraphics.

duncanspumpkin avatar duncanspumpkin commented on May 18, 2024 1

Do note we have modified some of the characters already such as lower case l.

We could do with a whole new font for the game probably and make it so that latin languages render the same way as the none Latin languages. But at this time no one has really decided.

from opengraphics.

keiyakins avatar keiyakins commented on May 18, 2024 1

Don't use a system font and assume it's there because "it ships with Windows". There are Mac OS X, GNU/Linux, and Android builds, and the potential for others - similar projects have seen ports to everything from DOS to Haiku to the Nintendo 3DS. If you want a specific font, you must ship it yourself.

from opengraphics.

zrowny avatar zrowny commented on May 18, 2024 1

(Take what I'm saying with a grain of salt. I'm talking out of my butt a little bit here, since I'm not really familiar with font rendering, especially in the context of games)

Deciding to switch away from a pixel "font" is definitely not trivial or obvious. If we switched to an actual vector font, that would presumably take a decent amount of programming work to switch from rendering sprites for each character to an actual font renderer. I think the non-antialiased look is really important (I hope we never go the direction RCT Classic does its UI), so it would have to do that, and that makes font hinting really important, which is a-whole-nother can of worms if you want any control over the actual pixels in the font.

TL;DR, having multiple sizes of fonts is hard. If you use vectors (like most modern fonts) it's easier to scale, but it's a lot harder to control exactly how it looks at a pixel level. I think a better solution is to just create multiple sets of sprites for different font sizes. I don't think we really would need more than 1x and 2x for this anyway.

As far as shipping the font, there's plenty of open source fonts (including versions of Tahoma) that we wouldn't have a problem including if we went that route. If we stick to bitmaps obviously we'd be distributing those anyway.

from opengraphics.

zrowny avatar zrowny commented on May 18, 2024 1

how would that affect non-integer scaling?
i.e. I use 1.5 on my laptop because both 1x and 2x are practically unusable on it.

Just to get it out of the way, I don't know that it would make sense to actually make 1.5x (or any other non-integer) sized sprites, for fonts or for anything else.

I assume that render scaling essentially works now by rendering the game to a smaller resolution and then scaling it up (with nearest-neighbor interpolation). I have only a limited understanding of how the rendering engine works, but even just having 2x sprites would have to involve a significant change to this, to scale all the 1x stuff and then render the 2x sizes separately. For non-integer scaling you could render at 1x and scale up (what we already have) or, if you're okay with the effects of downsampling, 2x and scale down?

from opengraphics.

mrpenguinb avatar mrpenguinb commented on May 18, 2024

Do note we have modified some of the characters already such as lower case l.

We could do with a whole new font for the game probably and make it so that latin languages render the same way as the none Latin languages. But at this time no one has really decided.

The game might use Tahoma then, since it matches with almost every character.
Yeah, it might be worth making a completely custom font based on what it looks like in OpenRCT2 currently.
Or else editing Tahoma by modifing the lower case l and other characters might be a good option.

from opengraphics.

Ryder17z avatar Ryder17z commented on May 18, 2024

I don't think we really would need more than 1x and 2x for this anyway.

how would that affect non-integer scaling?
i.e. I use 1.5 on my laptop because both 1x and 2x are practically unusable on it.

from opengraphics.

Ryder17z avatar Ryder17z commented on May 18, 2024

ideally you would render in high res and scale down, but with a good upscaler the opposite is better

from opengraphics.

Ryder17z avatar Ryder17z commented on May 18, 2024

a blocky "LCD"/"Digital" font might work. Example:
https://www.dafont.com/draxel.font
(this particular font is under CC0 license)

from opengraphics.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.