Git Product home page Git Product logo

heroes.graphics.essentials.reloadedii's Introduction

Heroes Essentials: Graphics



Hey Dream

I need you to help me
put a cringy line here."

Id: sonicheroes.essentials.graphics

Table of Contents

About This Project

The following project is a Reloaded II Mod Loader mod that provides a set of essential features for running Sonic Heroes in 2019, mainly in the graphics department.

Widescreen & Tallscreen Support

Normally Sonic Heroes only allows you to use a few hardcoded resolutions, all constrained to the 4:3 aspect ratio. Graphics Essentials meanwhile allows you to use both play the game in wide and tall screen modes.

Wide 2P

Fast Stage Load Times

Enabled by default

Normally the game has to wait until the titlecards finish playing to allow you to start the level. Graphics Essentials allows you to bypass that wait.

Other Features

  • Uncapping 2P Framerate: 2P is no longer limited to 30FPS!
  • Custom Window Styles: Resizable & Borderless Windows
  • High Aspect Ratio Crashfix: Normally when running on very wide resolutions such as 5760x1080, the game would crash when loading a stage. Not anymore.
  • Complete Launcher Replacement: The configuration file for this mod replaces the game's settings file completely.
  • Fixes Startup Crash experienced in Unmodified Game when DEP is enabled.

Acknowledgements

Aperture by Martin Chapman Fromm from Noun Project

Crazy Muzzarino for Addresses of Some UI Rendering Functions and addresses at SCHG: Sonic Heroes

heroes.graphics.essentials.reloadedii's People

Contributors

muzzarino avatar sewer56 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

heroes.graphics.essentials.reloadedii's Issues

Force RenderWare Reset to workaround Unexpected Client Area Behaviour

Purpose of Patch 1.4.2

https://discord.com/channels/288415776782942210/288417145493258240/1223814148610068520

On this user's 1440p panel with display scaling, game did not correctly set the render region for some strange reason. Both with and without dxvk.

For now we force a window resize to correct it, but in the long run, we should do a more proper patch and figure out what the game does during window resize, and replicate that.

Anti-aliasing

Is it possible to configure anti-aliasing with this mod?

Possible Heap Corruption in Hook Managed to Native transitions when Compiling in Release Mode!?

I am dumbfounded, speechless and in the last two days, cannot come to a conclusion.

There appears to be a possibility of either a very deeply rooted runtime bug in the .NET Core runtime involving managed -> unmanaged code transition that is exposed hooking certain functions or heap corruption when hooking some functions.

Specifically compiling the Hooks Project of Graphics Essentials in Release Mode causes the following side effects:

Initial Problems

Passing the interface to constructor of ExtendedController caused an access violation... for passing an object on the stack.

This error was only triggered in Special Stages, whereby the game would crash when the emerald indicator is drawn.

Fixed?

These initial problems may have been fixed by adding the ESI parameter into the following function used to draw the emerald indicator:

public delegate void* sub_458920(void* preserveEax, void* preserveEsi, float x, float y, float width, float height);

Which the previous lack of may have possibly caused memory corruption.

Persistent Issues

  • Special Stage Emerald Indicator Draw Crash

Directly related to the heading above, and the same function.
Compiling the library as Release still causes the game to freeze when the emerald indicator is drawn. The game works for another 2-3 frames, until it freezes without crashing.

According to the Crash Dumps %localappdata%\Crash Dumps, the error is 0xC0000409 (Stack Overflow/Stack Buffer overrun) however debugging the process I could not find any evidence of a stack overflow.

This might be a case of perhaps an expected register to be callee preserved used later in code, I have yet unfortunately not figured out.

Help would be appreciated.

Things incorrectly adjusted

  • The vertical FOV expansion was meant to lock the horizontal fov to 16:9 while extending the vertical, not zoom it in.
  • Certain orthographic elements such as the "Now Loading" text render using the main resolution on it's code execution before they're resized into 4:3 canvas making it appear incorrect on a blank screen.
  • Powerup icons aren't positioned correctly on vertical display.
  • The dot in the 2P hud is scaled incorrectly and the bar is supposed to be above the formation maestro.
  • Shadows shouldn't be scaled by the screen aspect ratio.

vlcsnap-2019-08-05-01h58m52s255
Tsonic_win 2019-08-05 02-51-15-522
Tsonic_win 2019-08-05 05-11-13-331
Tsonic_win 2019-08-05 02-58-37-405

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.