Giter VIP home page Giter VIP logo

taylor's People

Contributors

chadowo avatar hellrok avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

taylor's Issues

website down

website with playground and tutorials is down.

Advocate the Web functionality

The web functionality of this library is one of its biggest selling features however its hardly mentioned

On Reddit I am starting to see the taylor name come up more and more often. It would be huge to have the web/wasm support be marketed.

Other competitors status in the ruby/web/wasm space:

  • Dragon Ruby (closed source, web/wasm support with mruby)
  • Ruby2D (no web/wasm support with mruby, existing PR in draft for too long/stalled)
  • Gosu (no web/wasm support)

If we advocate for Taylor Web/WASM support than that puts Taylor at the top of the pile, being that its both open source and has web/wasm support with mruby.

Suggested actions

  1. Mention web/wasm (and other platforms) near top of taylor Github readme.

  2. Mention web/wasm on taylor home page, https://taylor.oequacki.com/

Screenshot 2023-03-09 at 9 35 42 AM

  1. Mention web/wasm here on taylor getting started page, https://taylor.oequacki.com/documentation/tutorials/getting_started/

Screenshot 2023-03-09 at 9 39 58 AM

  1. Add web/browser section on the cheatsheet, https://taylor.oequacki.com/documentation/tutorials/cheat_sheet/

Top-level namespace is overloaded

The top-level namespace is far too overused. Cons:

  • This makes for one extremely long documentation page, and the methods are buried 1/4 of the page down because of the excess of constants in the top level namespace. One of the major complaints about DragonRuby was that the documentation is just one giant page. (I cant find this link to this discussion point however I found it to be notable)

  • This top-level namespace is the least obvious link on the documentation pages, mostly the eyes are gravitated towards clicking on a class. (this was why I was previously unable to find the method get_attribute_from_element)

  • Using the top-level namespace so heavily doesnt feel very Ruby like, as such I think many Rubyists could be turned off by this, I think that mostly all methods should be namespaced inside of some class.

An improved example taken from the website:

Suggested (for example, it should be noted the Draw constant may not be ideal naming, not sure)

Window.init(800, 480, "Taylor Example")
Window.set_target_fps(60)

until Window.should_close? # Detect window close button or ESC key
  Draw.drawing do
    Draw.clear
    Draw.text(
      "Welcome to your first Taylor application!",
      190, 200, 20, Colors::DARKGRAY
    )
  end
end

Window.close

Current

init_window(800, 480, "Taylor Example")
set_target_fps(60)

until window_should_close? # Detect window close button or ESC key
  drawing do
    clear
    draw_text(
      "Welcome to your first Taylor application!",
      190, 200, 20, DARKGRAY
    )
  end
end

close_window

If we did decide to update the namespace. If backwards compatibilty for old games is required then we could have a backwards_compatibilty layer that can be loaded. Ex.

# game.rb
require "backwards_compatibility"

# backwards_compability.rb
def close_window
  Window.close
end

def init_window(*args)
  Window.init(*args)
end

... etc ...

Make the github URL known

I found the project via reddit.

The github project I found from the URL for the downloads.

It would be nice if you could add this on the homepage somehow, so people can
report issues and so forth.

Typo In README

In the 5th step of the "Compile Yourself" section.

  1. Take make it easier to run, you can create a taylor-dev script and populate
    it with:
#!/usr/bin/env bash
TAYLOR_PATH=/home/sean/code/taylor/

"$TAYLOR_PATH/dist/linux/debug/taylor" "$TAYLOR_PATH/cli-tool/cli.rb" "$@"

It should read "To make it easier to run [...]" shouldn't it?

Raylib 5.0

Are there any plans to update to Raylib 5.0?

Platformer and Gestures examples in Taylor Playground won't run

As the title says, The platformer and Gestures example can't run on the playground, I'm using Firefox 111 on linux, taking a look on the dev console reveals this error
Uncaught (in promise) Please compile your program with async support in order to use asynchronous operations like emscripten_sleep

After looking on the source code for the platformer example it seemed like there was a chunk of code missing required for running in web as stated in the cheatsheet, so I did the next changes to the platformer source code

# Was until window_should_close?
def main
  # do game stuff...
end

# Added this before close_window
if browser?
  set_main_loop 'main'
end

doing that, however gave me this error
Uncaught Infinity Taylor Playground.js:225:3
I'm not sure if I'm missing something or not, help is sure appreciated!

Intel Mac issues?

Just tried out the new release on a older OSX laptop with Intel chip:

(base) โžœ  Downloads ./taylor --version
zsh: bad CPU type in executable: ./taylor

More standalone / small-ish examples

Would it be possible to, say, add examples/ or something and add standalone examples there?

I learn best from adapting existing code. I used this for ruby-gtk and gosu for instance.

When I invest time into a new GUI toolkit I try to see what is all possible, so it would help to
see how things could be added (e. g. "how would I add a button-like user element" aka
on mouse click event do something, how to change font, colours and so on).

These examples can be very short, really mostly just focus on one aspect. And a few
more complex examples at a later point. I'll definitely check out taylor in the future; am
just a bit scared about the time investment without knowing that this may be useful. :)

(While I know ruby, C is unfortunately above my head, so I try to stay "within" ruby at
all times.)

Hot-reloading

Is hot reloading a planned feature? I think it could be really cool to see!

require/file io

Does this support any additional functionality over mruby such as require, load, or file io operations?

specifically things like this fork of mruby does? https://github.com/iij/mruby

has some really good features.

mkdir permission denied.

I just installed Taylor on Windows 10, but when i try to run taylor new it returns the following error:

 [6] (unknown):0
        [5] (unknown):0:in call
        [4] (unknown):0:in new
        [3] (unknown):0:in initialize
        [2] (unknown):0:in call
        [1] (unknown):0:in create_directory!
(unknown):0:in mkdir: Permission denied - taylor_game (Errno::EACCES)

Is there something I did wrong, and if so how do I get it to work.

taylor binary does not work for me

./taylor 
./taylor: /usr/lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ./taylor)

I am stuck on glibc 2.28 right now. Anyway, this is just to let you know that this may not work for
everyone right now (damn glibc versions...)

3D support?

Hello! This project looks awesome. As a fan of raylib, using it in ruby just feels natural. I see in the cheatsheet that there's still no support for 3D models or 3D rendering. When are those expected to be added? I would be interested in contributing :)

Wrong header on cheatsheet

above the web section there's supposed to be the platform one but instead it says web.

here's a screenshot of how it is now
imagen

Compile instructions

I just did a git clone checkout and compiled it. It compiled without errors:

./vendor/linux/raylib/include/ build/linux/debug/argv.o build/linux/debug/main.o build/linux/debug/mruby_integration/audio.o build/linux/debug/mruby_integration/audio/device.o build/linux/debug/mruby_integration/audio/music.o build/linux/debug/mruby_integration/audio/sound.o build/linux/debug/mruby_integration/core.o build/linux/debug/mruby_integration/core/cursor.o build/linux/debug/mruby_integration/core/drawing.o build/linux/debug/mruby_integration/core/files.o build/linux/debug/mruby_integration/core/gestures.o build/linux/debug/mruby_integration/core/input.o build/linux/debug/mruby_integration/core/input/gamepad.o build/linux/debug/mruby_integration/core/input/keyboard.o build/linux/debug/mruby_integration/core/input/mouse.o build/linux/debug/mruby_integration/core/input/touch.o build/linux/debug/mruby_integration/core/misc.o build/linux/debug/mruby_integration/core/screen_space.o build/linux/debug/mruby_integration/core/timing.o build/linux/debug/mruby_integration/core/window.o build/linux/debug/mruby_integration/models/camera2d.o build/linux/debug/mruby_integration/models/colour.o build/linux/debug/mruby_integration/models/font.o build/linux/debug/mruby_integration/models/image.o build/linux/debug/mruby_integration/models/music.o build/linux/debug/mruby_integration/models/rectangle.o build/linux/debug/mruby_integration/models/sound.o build/linux/debug/mruby_integration/models/texture2d.o build/linux/debug/mruby_integration/models/vector2.o build/linux/debug/mruby_integration/shapes.o build/linux/debug/mruby_integration/shapes/circle.o build/linux/debug/mruby_integration/shapes/collision.o build/linux/debug/mruby_integration/shapes/ellipse.o build/linux/debug/mruby_integration/shapes/line.o build/linux/debug/mruby_integration/shapes/pixel.o build/linux/debug/mruby_integration/shapes/rectangle.o build/linux/debug/mruby_integration/shapes/ring.o build/linux/debug/mruby_integration/shapes/triangle.o build/linux/debug/mruby_integration/struct_types.o build/linux/debug/mruby_integration/structs.o build/linux/debug/mruby_integration/text.o build/linux/debug/mruby_integration/textures.o build/linux/debug/raygui.o ./vendor/linux/libmruby.a ./vendor/linux/raylib/lib/libraylib.a -l dl -l pthread

However had, I don't quite know what to do next now ... could you perhaps add a bit more content to the main README? Perhaps "next steps" or so? Or the omnipresent "hello world" example after having compiled/installed taylor? Right now I am not sure which way to go next from here ...

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.