UPlasma development - Play Plasma from the Unity engine

General debates and discussion about the Guild of Writers and Age creation

Re: Idea: Play Plasma from another engine

Postby dendwaler » Mon Jul 02, 2018 1:44 pm

incredible Sirius,.... incredible.
This all is far beyond my knowledge, so i hardly can't comment to it
but i hope and feel that you will succeed in what you have in mind.

Do you remember?.....

My memories go back to the day you said to me.
" Ask you Grandpa for a book around Python as a birthday gift ....and you will learn this it a week."

Yes, you did it , and i did not...because Python was not invented those days when my grandpa was around.

To me, you definitely are the promise of the new generation.
Those wonderfull Worlds are called " Ages" , because that is what it takes to build one.

Image

Watch my latest Video Or even better..... watch the Cathedral's Complete Walkthrough made by Suleika!
User avatar
dendwaler
 
Posts: 875
Joined: Mon Jun 22, 2009 10:49 am
Location: Nederland

Re: Idea: Play Plasma from another engine

Postby Sirius » Sat Jul 07, 2018 8:50 am

That's very kind, Dendwaler. I appreciate it :)

dendwaler wrote:My memories go back to the day you said to me.
"Ask you Grandpa for a book around Python as a birthday gift ....and you will learn this it a week."

Yes, it seems a bit silly now that I think about it :P The story about my grandfather giving me a Python book for my Uru programming was true though. We've all come a long way since then...


Anyway. The Plasma loader and Python engine are running pretty good, I'll improve them bit by bit later.
For various reasons I need now to work more on the interfaces (continue the KI, make a main menu and avatar selection, etc). I dusted off Tweek's designs to gather some ideas :P
Those are going to be drastic changes from the originals... Uru won't need a launcher anymore as everything will be built-in.
Here is a small sample:
Show Spoiler

Oh, and yeah, modding support. "Mods" are used to inject custom content into the game. I'll use those for Age-specific bugfixes, mostly.
But if people other than me are interested in creating stuff for Unity, they will be able to load custom content using mods. That includes custom Ages or modifications to Cyan's own.
At a later time, this will be paired with a custom UruAgeManager designed specifically for Unity mods, allowing you to download and install mods while you're playing. That will be pretty sweet.
User avatar
Sirius
 
Posts: 1091
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Idea: Play Plasma from another engine

Postby Tallonenx » Sat Jul 07, 2018 10:41 pm

It's been a while, but I just had to say- you've done some fantastic work here!
I remember when a certain someone got Ahnonay to run in unreal...
Looks good in unity too, and these fixes you are making are amazing.

This looks like the most promising headway I've seen in some time.

Ive always dabbled in making my own ages and hacking Uru since the COBBS days,
but this looks like something transformative.

Im not one much for coding, but is there anything us neophytes can do to support the project?
User avatar
Tallonenx
 
Posts: 6
Joined: Fri Nov 16, 2007 9:45 pm

Re: Idea: Play Plasma from another engine

Postby Sirius » Sun Jul 08, 2018 4:23 am

Glad you enjoy the look of it so far ! :)

Tallonenx wrote:I remember when a certain someone got Ahnonay to run in unreal...

Yes, that was AndyLegate. He did a few other Ages too. He couldn't release anything as it was copyrighted by Cyan, but that really motivated me to work with non-Plasma engines afterwards.

I wasn't around then, but COBBS days must have been a fun time !

Tallonenx wrote:Im not one much for coding, but is there anything us neophytes can do to support the project?

Feedback, ideas, concepts and opinions are always useful.
So far, the project is just a glorified PRP viewer, but eventually I'd like it to be completely playable. However it won't be a perfect Uru clone either.
While the Ages themselves probably won't change much, things like gameplay and interfaces can be improved to make the game easier to use.
For instance, two of the most annoying things in Uru were scrolling through lists in the KI and having to hold down the right mouse button to look around in first person. Scrolling can now be done using the mouse wheel, and the right mouse button is now a toggle (like in Myst 3 and 4). You can still move using left-click, or WASD. So if there is something that bothers you in Uru, don't hesitate to speak about how it could be improved.

And then there are more complex questions, like in which Age to start (the Cleft or Relto), how should multiplayer be handled (most notably instancing - multiplayer will probably be LAN-only at start), how to handle third-person controls (I'm not really fond of how the game locks your camera), whether and how Myst V Ages should be available directly in Uru, etc.
Although originally not meant for this project, Tweek wrote a few interesting articles on the subject:
Login interface
Instancing
Cleft and Descent
(just to name a few)

I use those as inspiration and will try to get the better balance to fit everyone's taste. This will be the real improvement over Plasma, IMHO (this, and moddability).
User avatar
Sirius
 
Posts: 1091
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Idea: Play Plasma from another engine

Postby Tweek » Sun Jul 08, 2018 9:28 am

I never liked the change to the game starting in Relto. I get why they did it in a sense but I didn't care for it.

Those concepts I drew up for interface changes, I really should update them at some point.
Beneath - IC Blog.
Beneath: Ages of Tweek - FB Age Dev Page.
User avatar
Tweek
 
Posts: 680
Joined: Sat Sep 29, 2007 6:37 am

Re: Idea: Play Plasma from another engine

Postby Sirius » Sun Jul 29, 2018 2:21 am

Mark Finch is a madman.

Show Spoiler


Phew, that was NOT a piece of cake ! I thought converting the waveset code would give me a break from the tougher code, but it actually WAS the tougher code.
Still a few bugs left, but it mostly works. I'll shoot a video of it in movement later.
And there is some other cool stuff I'm working on, I'll write about it too 8-)
User avatar
Sirius
 
Posts: 1091
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Idea: Play Plasma from another engine

Postby Deledrius » Sun Jul 29, 2018 2:29 am

You have stared into the madness, you have come to harness it, and it did not consume you.
User avatar
Deledrius
Gehn Shard Admin
 
Posts: 1199
Joined: Mon Oct 01, 2007 1:21 pm

Re: Idea: Play Plasma from another engine

Postby Luna » Sun Jul 29, 2018 3:54 am

O.o That looks really cool although knowing Unity I worry a bit about performance. I would love to check the code though, to see how you pulled it off.
Code: Select all
long longestTimeWithoutPlayingMoula = (new Date()) - (new Date(2014, 9, 26));
User avatar
Luna
 
Posts: 204
Joined: Fri Oct 08, 2010 12:21 am
Location: Il y a encore des pommes.

Re: Idea: Play Plasma from another engine

Postby Sirius » Sun Jul 29, 2018 4:56 am

Deledrius wrote:You have stared into the madness, you have come to harness it, and it did not consume you.

Yeeeaaaah... I wouldn't bet on that.
However I'm still writing shader code in regular glsl instead of assembly, so maybe I'm not completely mad.

Oh wait. I'm making a moddable Plasma emulator. No I'm not. HALPZ !

Anyway. Small improvements:
Show Spoiler

Edge-blending where the mesh meets a solid one, and refraction of the underwater image ! Yeah ! 8-)
(I also wanted to add tesselation and/or parallax mapping, but those don't really work with the complexity of the current shader, so I probably won't)

Luna wrote:O.o That looks really cool although knowing Unity I worry a bit about performance. I would love to check the code though, to see how you pulled it off.

Unity in general is really good when it comes to performances. It really isn't comparable with RMME, if that's what you were thinking about.
Wavesets themselves... I don't know how expensive they are, but I wouldn't worry too much about it. The Unity version uses different programming languages, but mostly work the same, so the performance drop shouldn't be significant on PCs (even with the new improvements I made today, this shouldn't be too bad).

I didn't actually benchmark performance yet because I'm running Unity fully on the CPU, so they were artificially laggy (my room is hot enough without my GPU adding to the heat :) ). I'll run a proper test sometime.

Once I'm done fixing/cleaning the code I'll make it public, so you'll be able to have a look and even test if for yourself. This should complement Denkasen's waveset editor nicely :D
User avatar
Sirius
 
Posts: 1091
Joined: Mon Jul 26, 2010 4:46 am
Location: France

Re: Idea: Play Plasma from another engine

Postby Paradox » Sun Jul 29, 2018 12:29 pm

Sirius wrote:However I'm still writing shader code in regular glsl instead of assembly, so maybe I'm not completely mad.


Heeeeyy, so I've been working (very irregularly) on porting Plasma to OpenGL with a plGLPipeline, and figuring out how to turn fixed-function DirectX behaviour into GLSL shaders has been an... adventure. Wavesets (and bump-mapping, and env bump luminance mapping) are still on my to-do list, but your shaders might be useful as a starting point depending on how closely they map back to the original plShader code. I wasn't especially looking forward to porting assembly pixel shaders to GLSL ;)
"And one day I woke to find the future held no place for me. I was unwanted in a world, that with my hands I'd helped to build. Where once was honesty and pride, I now stand broken and alone."
User avatar
Paradox
 
Posts: 1259
Joined: Fri Sep 28, 2007 6:48 pm
Location: Canada

PreviousNext

Return to General Discussion

Who is online

Users browsing this forum: Sirius and 0 guests