Skip to main content

News

Topic: Long time user, glad that registration finally works! (Read 233 times) previous topic - next topic

Long time user, glad that registration finally works!
Hi, I've been using Sphere 1.5 for about three to four years now, originally finding it when I was struggling to write functional game code in Python. I have tried joining before but now that the registration page finally works correctly I've finally been able to get that activation email.

Anyway, I enjoy writing games, and find programming subjects like AI, and 3D rendering, lately I've also been getting into Neural networks but my insufficient knowledge of algebra makes learning how to create neural networks difficult.

Anyway, it's nice to finally be able to join this forum, I'm hoping to further my skills here and possibly even be able to help others while I'm here as well.
When in doubt, blame code gremlins.

Re: Long time user, glad that registration finally works!
Reply #1
Welcome to the community! While miniSphere does have some 3D functionality, there isn't really enough of it to create a fully functional game without a lot of effort on the developer's part, but if you just want to create 2D (or predominantly 2D) games, it's a great engine and it's cross-platform too, more so than 1.x.

  • Rhuan
  • [*][*][*][*]
Re: Long time user, glad that registration finally works!
Reply #2
@SilicateWielder welcome to spheredev/spherical. Recently there's been more conversation on the discord channel: https://discord.gg/F49sVP But the forum is still good for conversations we want to last. Sorry to hear you've had problems joining.


As for 3d; I think proper 3d support could come in miniSphere 6....

TBH all we need is an ability to draw shapes that have z coordinates, most of the hooks are there just a bit of internal plumbing missing.

After that we'd want a method for loading some common 3d formats - wouldn't be too hard to write some loading scripts I assume.

We may run into performance issues at that point if we tried to do anything too big with 3d stuff but I dunno - miniSphere with chakra is pretty fast but we're currently locked to being single threaded.

Re: Long time user, glad that registration finally works!
Reply #3
@SilicateWielder welcome to spheredev/spherical. Recently there's been more conversation on the discord channel: https://discord.gg/F49sVP But the forum is still good for conversations we want to last. Sorry to hear you've had problems joining.


As for 3d; I think proper 3d support could come in miniSphere 6....

TBH all we need is an ability to draw shapes that have z coordinates, most of the hooks are there just a bit of internal plumbing missing.

After that we'd want a method for loading some common 3d formats - wouldn't be too hard to write some loading scripts I assume.

We may run into performance issues at that point if we tried to do anything too big with 3d stuff but I dunno - miniSphere with chakra is pretty fast but we're currently locked to being single threaded.

Okay, thanks for the info! It would be cool to see 3D graphics implemented in Sphere by default. What I've been doing with 3D rendering is actually implementing my own 3D space and rendering framework from the ground up; I've found it to be a great learning experience. Right now I'm implementing a function for wrapping textures onto polygons using a transform blit. I don't believe this feature is available on Minisphere but it seems to work fine under linux.
When in doubt, blame code gremlins.

  • Rhuan
  • [*][*][*][*]
Re: Long time user, glad that registration finally works!
Reply #4
Sphere was designed as a 2D RPG engine, it can do more than that but full 3d isn't quite there yet as said miniSphere's got a lot of what it needs but not quite all.

With miniSphere you can make shapes/polygons and apply a texture to them but you can only give their vertices x and y coordinates, they have a z coordinate property but it isn't used at the moment.

What have you been implementing your own 3d engine in?

Re: Long time user, glad that registration finally works!
Reply #5
I lost most of my old Sphere games and resources when my laptop died (milk +laptop + seizure = spilled milk and a dead laptop), but I remember someone created a rudimentary 3D test game that rendered some cubes with textures from Minecraft, and you could move around the camera.

  • Rhuan
  • [*][*][*][*]
Re: Long time user, glad that registration finally works!
Reply #6
I lost most of my old Sphere games and resources when my laptop died (milk +laptop + seizure = spilled milk and a dead laptop), but I remember someone created a rudimentary 3D test game that rendered some cubes with textures from Minecraft, and you could move around the camera.
You could always do it with transformBlit and some maths but it's a bit of a pain.

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Long time user, glad that registration finally works!
Reply #7
Welcome! It took some effort to get everything back running (new site, new forums, get emails to function again), so I'm glad it means we get the members we would have missed out on otherwise.

Re: Long time user, glad that registration finally works!
Reply #8
I lost most of my old Sphere games and resources when my laptop died (milk +laptop + seizure = spilled milk and a dead laptop), but I remember someone created a rudimentary 3D test game that rendered some cubes with textures from Minecraft, and you could move around the camera.
You could always do it with transformBlit and some maths but it's a bit of a pain.
Sorry about the long delay between responses, between my ADHD and school sometimes I can forget things, like having an account on here.

You definitely can! I'm currently writing a 3D graphics library for a game I'm developing, it's primarily using the Sphere v1.5 functions but once I can learn how to use MiniSphere properly I plan on updating it to the newer engine. I'll share it here on the forums once I have it in an operable state (And have ensured my code isn't a heaping tangle of spaghetti).

It most likely will require defining models within your code at first, but eventually I'm hoping to make it possible to import .obj files and the likes. I'm still wrapping my head around how to manage polygons and reducing the rendering load by not rendering invisible polys.
When in doubt, blame code gremlins.

Re: Long time user, glad that registration finally works!
Reply #9
I'm still wrapping my head around how to manage polygons and reducing the rendering load by not rendering invisible polys.
I don't remember what it was called, but I know John Carmack (former lead programmer at id Software who pioneered 3D graphics on the IBM PCs and PC clones) wrote an algorithm for handling that kind of thing. I think it was first implemented with the Doom engine.

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Long time user, glad that registration finally works!
Reply #10
I'm still wrapping my head around how to manage polygons and reducing the rendering load by not rendering invisible polys.

I should note that miniSphere has hardware-accelerated APIs for drawing stuff ("Galileo") so you don't have to do this yourself, you can let the GPU do it.  Sphere 1.x dates back to the 90s and is primarily software-rendered, so that's why you had to do this kind of thing yourself.  Not so much in a modern engine like miniSphere.
miniSphere 5.0.1 - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan

Re: Long time user, glad that registration finally works!
Reply #11
Isn't there a distinction between 2D and 3D acceleration? Or does miniSphere handle both?

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Long time user, glad that registration finally works!
Reply #12
Modern GPUs render everything as textured triangles, this is true for both 2D and 3D graphics.  The specific projection is determined by the transformation matrix in use (in Sphere v2, a Transform object).
miniSphere 5.0.1 - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan