Results 1 to 10 of 39

Thread: OpenGL GLSL - Text rendering query

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    PGD Staff / News Reporter phibermon's Avatar
    Join Date
    Sep 2009
    Location
    England
    Posts
    524
    I love the ideas Athena! there was that abandoned game by notch (https://en.wikipedia.org/wiki/0x10c) that was going to incorperate a virtual machine that ran actual bytecode and I've dreamed of related concepts as I get bogged down in writing a bloody engine that can do tons of things I don't personally want to do

    I'd like to offer that if you plan on some future, server/client like multiplayer?

    There's things that will save you a lot of time in the future, if you think about the difficulties of synchronizing/validating the virtual machines, at this point in the design.
    For example you could ensure that two virtual machines communicate over a virtual network and add an api for this virtual network into the virtual machine if you wanted internal networking.
    or/in addition, you could abstract the interface between the VM and it's input/outputs eg the 'display' - this abstraction allowing for local computer, single player setups but also server/client remote rendering.
    The way I understand it - the bandwidth of server/client synchronization (think anti-cheating, screen rendering) was a big sticking point for 0x10c and its scalability/performance.

    Would deffo like to hear more as and when you choose to say
    When the moon hits your eye like a big pizza pie - that's an extinction level impact event.

  2. #2
    PGD Community Manager AthenaOfDelphi's Avatar
    Join Date
    Dec 2004
    Location
    South Wales, UK
    Posts
    1,245
    Blog Entries
    2
    The difficulty I have with discussing it is that part of the allure I hope will be the fact that the machine has flaws in it (which also will make it difficult for me to really enjoy it because I won't have to go looking for them)... flaws that once discovered could provide attack vectors to exploit other players machines or other machines within the game world. There should also be some undocumented features that can be leveraged but not necessarily to provide an in-game advantage.

    As for synchronisation... it's not going to be necessary to synchronise player computers with one another. If all goes according to plan there will be a virtual internet that hosts a mail system, manufacturer websites and bulletin board systems where you can get quests and such like. Some of these will be transient, in that they exist or are accessible for the duration of a quest. But I want one of the key elements to be exploring the hardware and what's possible with it. If a player wants to simply sit there and write games for the virtual machine... go for it

    One thing I have to be certain about is that there will be no means of injecting software into the virtual world from a PC (other than via the editor I'm working on for building content). You want software that isn't available, you'll have to write it. And it won't be software like Hacknet where you have the SSH cracker and such like.

    I've got a roughed out design for the CPU, video controller and MMU. One of the things I'm looking at right now is to make sure I include features to allow the OS of the machine to be pre-emptive multi-tasking, which in itself is quite a daunting prospect as I'm going to have to write the OS.... I did think about possibly just porting a Linux flavour to it but I'd have to write a C/C++ compiler for that and there's no way I'm going to do that anytime soon

    Underlying tech is Delphi for all the grunt (so if I get it right and manage to separate the renderer from the OS sufficiently well, I should be able to port to MacOSX quite easily), Lua for control/quests etc. and various low level languages within the machine itself. Things like the virtual internet will probably just be one big Delphi service (possibly with a PHP plugin - although that raises security control questions since I'd effectively have to create my own flavour of PHP so it was only accessing the resources of the virtual server on which it was running - I could possibly build a system based on real virtual machines but that then limits what I can do with them unless I started introducing a deamon in the background to control them, which I'd then have to hide from things like PS etc.). It would also make recovering from problems trickier. This does mean that in game mode, it's going to be an on-line game, but Sandbox will run on-line or off-line. I'm thinking of having clear separation between play and sandbox... so software created in play mode will not be available in sandbox mode and vice versa, but on-line sandbox will probably have a bulletin board system of it's own for people to chat and exchange software etc.

    It's a big undertaking and as I say, it may never come to fruition, but if I get the machine running with an operating system, editor and assembler, then I'll be chuffed to bits... the rest would be a nice bonus.
    :: AthenaOfDelphi :: My Blog :: My Software ::

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •