You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
cleaned up widescreen code, organised config file
This commit is contained in:
@@ -98,21 +98,13 @@
|
||||
#define IA8_COINS
|
||||
// Enables "parallel lakitu camera" or "aglab cam" which lets you move the camera smoothly with the dpad
|
||||
#define PARALLEL_LAKITU_CAM
|
||||
// Allows Mario to ledgegrab sloped floors
|
||||
#define NO_FALSE_LEDGEGRABS
|
||||
|
||||
|
||||
// HACKER QOL
|
||||
// Enable widescreen (16:9) support
|
||||
#define WIDE
|
||||
// When this option is enabled, LODs will ONLY work on console.
|
||||
// When this option is disabled, LODs will work regardless of whether console or emulator is used.
|
||||
// Regardless of whether this setting is enabled or not, you can use gIsConsole to wrap your own code in a console check.
|
||||
#define AUTO_LOD
|
||||
// Increase the maximum pole length (it will treat bparam1 and bparam2 as a single value)
|
||||
#define LONGER_POLES
|
||||
// Disable AA (Recommended: it changes nothing on emulator, and it makes console run better)
|
||||
#define DISABLE_AA
|
||||
// Allows Mario to ledgegrab sloped floors
|
||||
#define NO_FALSE_LEDGEGRABS
|
||||
// Number of possible unique model ID's (keep it higher than 256)
|
||||
#define MODEL_ID_COUNT 256
|
||||
// Increase audio heap size to allow for more concurrent notes to be played and for more custom sequences/banks to be imported (does nothing with EU and SH versions)
|
||||
@@ -147,10 +139,18 @@
|
||||
#define EXIT_COURSE_NODE 0x1F
|
||||
|
||||
// OTHER ENHANCEMENTS
|
||||
// Enable widescreen (16:9) support
|
||||
#define WIDE
|
||||
// Skybox size modifier, changing this will add support for larger skybox images. NOTE: Vanilla skyboxes may break if you change this option. Be sure to rescale them accordingly.
|
||||
// Whenever you change this, make sure to run "make -C tools clean" to rebuild the skybox tool (alternatively go into skyconv.c and change the file in any way (like adding/deleting a space) to specifically rebuild that tool).
|
||||
// When increasing this, you should probably also increase the GFX pool size. (the GFX_POOL_SIZE define in src/game/game_init.h)
|
||||
#define SKYBOX_SIZE 1
|
||||
// When this option is enabled, LODs will ONLY work on console.
|
||||
// When this option is disabled, LODs will work regardless of whether console or emulator is used.
|
||||
// Regardless of whether this setting is enabled or not, you can use gIsConsole to wrap your own code in a console check.
|
||||
#define AUTO_LOD
|
||||
// Disable AA (Recommended: it changes nothing on emulator, and it makes console run better)
|
||||
#define DISABLE_AA
|
||||
|
||||
// If you want to change the extended boundaries mode, go to engine/extended_bounds.h and change EXTENDED_BOUNDS_MODE
|
||||
|
||||
|
||||
@@ -1423,6 +1423,10 @@ void render_widescreen_setting(void) {
|
||||
print_generic_string(10, 200, textWideInfo2);
|
||||
}
|
||||
gSPDisplayList(gDisplayListHead++, dl_ia_text_end);
|
||||
if (gPlayer1Controller->buttonPressed & L_TRIG){
|
||||
gWidescreen ^= 1;
|
||||
save_file_set_widescreen_mode(gWidescreen);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1779,10 +1783,6 @@ s16 render_pause_courses_and_castle(void) {
|
||||
}
|
||||
#ifdef WIDE
|
||||
render_widescreen_setting();
|
||||
if (gPlayer1Controller->buttonPressed & L_TRIG){
|
||||
gWidescreen ^= 1;
|
||||
save_file_set_widescreen_mode(gWidescreen);
|
||||
}
|
||||
#endif
|
||||
if (gDialogTextAlpha < 250) {
|
||||
gDialogTextAlpha += 25;
|
||||
|
||||
@@ -15,8 +15,6 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#define WIDESCREEN
|
||||
|
||||
/**
|
||||
* This file contains the code that processes the scene graph for rendering.
|
||||
* The scene graph is responsible for drawing everything except the HUD / text boxes.
|
||||
@@ -297,14 +295,9 @@ static void geo_process_perspective(struct GraphNodePerspective *node) {
|
||||
u16 perspNorm;
|
||||
Mtx *mtx = alloc_display_list(sizeof(*mtx));
|
||||
#ifdef WIDE
|
||||
if (gWidescreen){
|
||||
if (gCurrLevelNum == 0x01) {
|
||||
aspect = 1.33333f;
|
||||
} else {
|
||||
aspect = 1.775f;
|
||||
}
|
||||
}
|
||||
else{
|
||||
if (gWidescreen && (gCurrLevelNum != 0x01)){
|
||||
aspect = 1.775f;
|
||||
} else {
|
||||
aspect = 1.33333f;
|
||||
}
|
||||
#else
|
||||
@@ -836,11 +829,10 @@ static s32 obj_is_in_view(struct GraphNodeObject *node, Mat4 matrix) {
|
||||
// the amount of units between the center of the screen and the horizontal edge
|
||||
// given the distance from the object to the camera.
|
||||
|
||||
#ifdef WIDESCREEN
|
||||
// This multiplication should really be performed on 4:3 as well,
|
||||
// but the issue will be more apparent on widescreen.
|
||||
// HackerSM64: This multiplication is done regardless of aspect ratio to fix object pop-in on the edges of the screen (which happens at 4:3 too)
|
||||
hScreenEdge *= GFX_DIMENSIONS_ASPECT_RATIO;
|
||||
#endif
|
||||
|
||||
if (geo != NULL && geo->type == GRAPH_NODE_TYPE_CULLING_RADIUS) {
|
||||
cullingRadius =
|
||||
|
||||
@@ -53,8 +53,7 @@ static s8 sSelectableStarIndex = 0;
|
||||
|
||||
// Act Selector menu timer that keeps counting until you choose an act.
|
||||
static s32 sActSelectorMenuTimer = 0;
|
||||
#ifdef WIDE
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Act Selector Star Type Loop Action
|
||||
* Defines a select type for a star in the act selector.
|
||||
@@ -95,11 +94,10 @@ void render_100_coin_star(u8 stars) {
|
||||
if (stars & (1 << 6)) {
|
||||
// If the 100 coin star has been collected, create a new star selector next to the coin score.
|
||||
#ifdef WIDE
|
||||
if (gWidescreen){
|
||||
if (gWidescreen) {
|
||||
sStarSelectorModels[6] = spawn_object_abs_with_rot(gCurrentObject, 0, MODEL_STAR,
|
||||
bhvActSelectorStarType, ((370*4.0f)/3), 24, -300, 0, 0, 0);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
sStarSelectorModels[6] = spawn_object_abs_with_rot(gCurrentObject, 0, MODEL_STAR,
|
||||
bhvActSelectorStarType, 370, 24, -300, 0, 0, 0);
|
||||
}
|
||||
@@ -169,8 +167,7 @@ void bhv_act_selector_init(void) {
|
||||
(((75 + sVisibleStars * -75 + i * 152)*4.0f)/3), 248, -300, 0, 0, 0);
|
||||
sStarSelectorModels[i]->oStarSelectorSize = 1.0f;
|
||||
}
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
for (i = 0; i < sVisibleStars; i++) {
|
||||
sStarSelectorModels[i] =
|
||||
spawn_object_abs_with_rot(gCurrentObject, 0, selectorModelIDs[i], bhvActSelectorStarType,
|
||||
|
||||
Reference in New Issue
Block a user