[Scummvm-devel] Pseudo-3D adventure games / 360 degree panoramic adventure games

Filippos Karapetis bluegr at gmail.com
Sat Dec 29 22:48:32 CET 2012


It's not a contest about which project has more engines :) It's about which
engine fits into what project. I wasn't aware of the extra effects in Myst
3... So, because of them in Myst 3, ResidualVM is certainly the perfect
fit. I've played most of the Cryo and Arxel Tribe games, and they don't
have any of these effects, they're using very simple projected images, and
didn't require any 3D acceleration or fast CPU/graphics card. They played
fine on a Pentium 4

On Saturday, December 29, 2012, Bastien Bouclet wrote:

> I'm the main author of the Myst 3 engine in ResidualVM and it seems
> appropriate I share my experience regarding its development.
>
> The 360 degree view is done by mapping 6 textures on the faces of a cube.
> This is the easiest part, and I agree no true 3D rendering system would be
> needed for it.
> The game also displays movies in the view. This is done by rendering an
> alpha-blended textured quad, not aligned with the cube faces. Maybe the
> alpha-blended projection would be slow on the less powerful target
> platforms if it was done by software. The game also uses transparency on
> various occasions (the cursor, the light flares, the overlay movies, ...).
> It's nice having OpenGL take care of it without much effort.
> The game also has some yet to be reimplemented "texture effects", used for
> example to simulate the water movement. The original engine computed the
> effects on the CPU. I remember having to disable the water effects on my
> computer when the game came out. I'm pretty sure the mobile targets are not
> going to be powerful enough to cope with these effects if they are
> implemented using software rendering. However, it's likely nowadays mobile
> GPU could render them fast enough if they are done using a shader.
> Additional and optional features could be added at a low cost using OpenGL,
> texture filtering being one of them.
>
> While reimplementing the Myst 3 engine I really liked beeing able to use
> OpenGL, because it meant I had a perfectly working, powerful and versatile
> mean of rendering 3D scenes. It was easy and fast to try my understanding
> of the original rendering code.
>
> To be clear, I'm perfectly happy with the Myst 3 engine being in
> ResidualVM, since this is what ResidualVM is designed for. I would benefit
> ResidualVM as a whole if more engines were to be added. Some of the backend
> related code could use having more hands around potentially working on it.
> Even if I can't speak for aquadran and Somaen, I'm quite sure we'd
> cheerfully welcome the Ring engine in ResidualVM.
>
> I'm afraid the 360 degree rendering code we could add to ScummVM would not
> be generic enough, the games needing more than just displaying a cube or
> sphere projection. Myst 3 being a perfect example.
>
> Bastien
>
> 2012/12/29 Marcus Comstedt <marcus at mc.pp.se <javascript:_e({}, 'cvml',
> 'marcus at mc.pp.se');>>
>
>>
>> Willem Jan Palenstijn <wjp at usecode.org <javascript:_e({}, 'cvml',
>> 'wjp at usecode.org');>> writes:
>>
>> > Exposing 3D functionality like this via OSystem sounds like it would be
>> a step
>> > towards 3D too far. I think we should keep our backend/engine interface
>> > strictly 2D.
>>
>> I haven't looked at the Myst 3 code that was talked about, but I
>> imagine that to use OpenGL for accelerating this kind of game, you
>> would actualy have one single flat quad covering the entire screen,
>> and then use a (single) custom fragment shader to do the actual image
>> transformation.  So it wouldn't actually be 3D functionality you'd
>> need to expose, but shader functionality.  Still, it's a bit unclear
>> exactly how this interface should look to be generic enough and still
>> not expand outside the intended scope.  Maybe someone could whip up an
>> API suggestion to serve as a base for discussion?
>>
>> In fact, maybe the API should simply provide cylindrical and spherical
>> projections of bitmaps as hardcoded functions?  Do all the games use
>> similar enough projections that you can just parametrize it?  (I
>> assume that all games based on QuickTime VR do.)
>>
>>
>>    // Marcus
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
>> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
>> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
>> MVPs and experts. SALE $99.99 this month only -- learn more at:
>> http://p.sf.net/sfu/learnmore_122912
>> _______________________________________________
>> Scummvm-devel mailing list
>> Scummvm-devel at lists.sourceforge.net <javascript:_e({}, 'cvml',
>> 'Scummvm-devel at lists.sourceforge.net');>
>> https://lists.sourceforge.net/lists/listinfo/scummvm-devel
>>
>
>

-- 
"Experience is the name every one gives to their mistakes" - Oscar Wilde
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.scummvm.org/pipermail/scummvm-devel/attachments/20121229/7d49e7c0/attachment.html>


More information about the Scummvm-devel mailing list