Difference between revisions of "ZVision"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Add some ZVISION TODOs)
(AC3 decoding was added a while ago, but is still a bit hacky.)
 
(24 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{EngineDescription|
{{EngineDescription|
         name=ZVision|
         name=ZVision|
         developer=[[User:RichieSams|RichieSams]]|
         developer=[[User:RichieSams|RichieSams]], [[User:Md5|[md5]]], [[User:MarisaChan|MarisaChan]]|
         companies=[[Activision]]|
         companies=[[Activision]]|
         usedBy=[[Zork Nemesis]], [[Zork: Grand Inquisitor]]|
         usedBy=[[Zork Nemesis]], [[Zork: Grand Inquisitor]]|
         dateAdded=October 17, 2013|
         dateAdded=October 17, 2013|
         release=N/A|
         release=1.8.0|
}}
}}


Line 16: Line 16:


It should be noted that from a technical viewpoint, this engine has nothing in common with the [[MADE]] engine used for [[Return to Zork]].
It should be noted that from a technical viewpoint, this engine has nothing in common with the [[MADE]] engine used for [[Return to Zork]].
It should also not be confused with the [http://en.wikipedia.org/wiki/Z-machine Z-machine] which is the original Virtual Machine used for the original Zork <b>text</b> adventure games.
It should also not be confused with the [[Glk/ZCode|Z-machine]] which is the original Virtual Machine used for the original [[Zork series|Zork]] <b>text</b> adventure games.


==Status==
==Status==
Both Zork: Nemesis and Zork: Grand Inquisitor are completable, with minor bugs and very small glitches
Both Zork: Nemesis and Zork: Grand Inquisitor are completable


==Immediate TODO's==
==Immediate TODO's==
* Add a dirty rectangling system for RenderManager AlphaEntries so we're not rendering them to the backbuffer every frame
* Add a dirty rectangling system for RenderManager AlphaEntries so we're not rendering them to the backbuffer every frame
* Add graceful failure for when .str isn't parsed correctly.
* Get Courier Prime and FreeSerif added to the packaged fonts, then fall back on them when fonts can't be found


==List of TODO's for ZVision to be playable==
==List of TODO's for ZVision to be playable==


===ZGI specific TODO's===
===ZGI specific TODO's===
* Check for the difference between the CD version of ZGI and the DVD version
(None at the moment)
** Potentially higher resolution (Window and/or videos)
** Potentially different video file format
* Fix display of points - they're not currently shown in death screens
* Fix the transparency of the Magic Viewer in the inventory screen
* Allow the inventory to be accessed in the teleportation station screens (to get your map)


===Nemesis specific TODO's===
===Nemesis specific TODO's===
* Fix LeverControl::onMouseMove() - the heuristic there it very hard to manipulate the planet levers
(None at the moment)
* Allow the screen to be rotated when the mouse cursor is at the left/right black screen bands


==Other TODO's==
==ZGI DVD TODO's==
* Make sure all image rendering is endian safe
* AC3 audio decoding is a bit hacky, with hard-coded volume adjustments for each video. It would be good if someone could figure out how to do without these.
* Evaluate all in-engine warnings/debug messages and perhaps move them to higher debug channels (Or ZVision specific debug channels)
* Clean out unused member functions from the Console class (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zvision/console.h console.h])
* Convert pointer initializers to ''nullptr'' instead of ''0''
* Add 'true' UTF-16 support for non-english versions of the game. (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zvision/string_manager.cpp#L214 StringManager])


[[Category:Engines]]
[[Category:Engines]]

Latest revision as of 14:06, 14 July 2020

ZVision
Engine developer RichieSams, [md5], MarisaChan
Companies that used it Activision
Games that use it Zork Nemesis, Zork: Grand Inquisitor
Date added to ScummVM 2013-10-17
First release containing it 1.8.0

About

The ZVision was the engine used by Activision in Zork Nemesis and Zork: Grand Inquisitor.

This engine was added by the GSoC student RichieSams to ScummVM as part of the GSoC 2013.

The ScummVM engine uses Marisa Chan's ZVision re-implementation, which is available from http://github.com/Marisa-Chan/Zengine, as a reference.

It should be noted that from a technical viewpoint, this engine has nothing in common with the MADE engine used for Return to Zork. It should also not be confused with the Z-machine which is the original Virtual Machine used for the original Zork text adventure games.

Status

Both Zork: Nemesis and Zork: Grand Inquisitor are completable

Immediate TODO's

  • Add a dirty rectangling system for RenderManager AlphaEntries so we're not rendering them to the backbuffer every frame

List of TODO's for ZVision to be playable

ZGI specific TODO's

(None at the moment)

Nemesis specific TODO's

(None at the moment)

ZGI DVD TODO's

  • AC3 audio decoding is a bit hacky, with hard-coded volume adjustments for each video. It would be good if someone could figure out how to do without these.