Updates from the Repl.it team about the product

← Back to all posts
40
Repl.it GFX Public Beta: Build Games and GUI Apps

Hello everyone,

We've spent months researching methods to implement a cross-platform and cross-language graphics engine in Repl.it. With our Explorer's help, we've explored different ways of doing graphics -- some of you even built amazing things on it! However, the time has finally come to start rolling out our graphics system. It's still buggy and requires some more work but it works. Some of you might have even already discovered it.

While we intend to roll this out to all our languages we're starting with a few specific environments and we'll generalize from there:

Here is a taste of what the development environment might look like:

Some limitations and known issues:

  1. The graphics window is shared across clients. I.e. if you share your repl with someone they'll be able to interact with the same window you're interacting with. It
  2. You have to fork someone's repl before seeing the result.
  3. Sound sadly doesn't work yet

We're hoping to fix these pending issue in the next week.

[TO TRY IT FORK AND FUN] I pulled a few examples from the web for you to check out.

Commentshotnewtop
4

Can't wait for official support for more languages!

3

Nice. I love this feature but could it be opened up in a new tab like repl.run?

3

Just in time for the Game Jam!

2

Oddly enough, GFX does not work for me. I simply get the loading wheel in where the graphics should be outputted, and it never loads.

2

Huge fan of these improvements for GUI interfaces! Love the current developments and
I'm excited for the future of repl.it!

1

This is very cool. I hope you add PySDL2 for Python (since pygame is still based on deprecated SDL 1.2) and SDL2 for C/C++. Or can you already use PySDL2 through the package manager it just doesn't have a dedicated "language" yet?

1

This is super exciting and the 3rd time that you guys have pushed out an update literally as my programming class would begin to start needing it. Is there a reason you called the language tkinter instead of python (with tkinter)?

1

@danieldiggs awesome! Good point. Will rename it.

1

How are you doing graphics support? As the author of the Arcade library http://arcade.academy I wonder how easy it would be to get Arcade integrated as well?

1

In Java Swing my application may load once. If I close the application then I just get a loading wheel (or sometimes a black screen with a black x for a mouse cursor) and can't run it a second time. Really looking forward to this feature though!

1

@ChristianWillaum what happens when you run it the next time? A screenshot or some logs would help us debug. Thanks

1

@amasad The second time I run it the nohup.out files has the following at the bottom. The screen looks like the attached picture.

XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
after 12840 requests (12840 known processed) with 0 events remaining.

Any other information you need?

1

Portability from desktop to here is amazing, even when it's using images! This my first PyGame game ever and it is the exact same as my laptop, here it is! https://repl.it/talk/share/Connect4-PyGame-Edition-8-Bit-Graphics/11772

You've done an amazing job on the repl.it GFX! Keep going with amazing implementations like these!

2

@HarveyH yay 🙌 we're gonna make sharing easier too.

Btw, are you joining the game jam?

1

@amasad yeh, y not? Can I use this cause it took less than a month to make (I might just modify graphics to fit theme if yes)

1

Thank you! Been waiting for this..I'm teaching AP Computer Science A and the ability to code graphic Java repls means we can use repl.it for the entire course.

Please allow classrooms to support Java Swing.

Thanks again!

1
1

More bugs:
-- It can't transfer capital-letter keypresses (it interprets them as lowercase)
-- Fonts don't work right with tkinter
This is an amazing feature though
Good job repl.it team

1

@HappyFakeboulde Try also checking if 'SHIFT' is pressed. Maybe there is a system call to check if caps lock is on?

1

that's dope
nice

1

Neat; this looks like it's running an X server and sending that out via the browser? Does it support OpenGL etc? Am hoping this will allow Pyxel (8bit games in python https://github.com/kitao/pyxel ) in the browser :)

1

@VictorRajewski1 yes it supports opengl! Try a pygame opengl example. Try to get pyxel working

1

@amasad Why won't it load additional libraries like Pyglet? https://repl.it/@paul_craven/Pyglet-example

1

@paul_craven You need to use the package manager. Right now it doesn't have the automatic package installer we have in regular python. Here is a gif

1

I got SFML to work on here using this feature (you can see the repl at https://repl.it/talk/share/SFML-on-replit-POC/11619) and it's working pretty smoothly. Good job on this one.

1

Can't wait to start experimenting!

1

WIll this be available for use in the upcoming Game Jam? Just wondering becuase I was going to do a text-based, but I know way more about Pygame.

1

@seamuswalden3 yeah. You can get started. Just pick "pygame" as a language.

1

That's great, thanks!

1
1

I'll be waiting for more!