Implement advanced rendering controls (Anti-Aliasing, Shadows) and update world settings equality tests
This commit is contained in:
@@ -20559,6 +20559,45 @@ export function App({
|
||||
|
||||
{!advancedRendering.enabled ? null : (
|
||||
<>
|
||||
<div className="form-section">
|
||||
<div className="label">Anti-Aliasing</div>
|
||||
<label className="form-field form-field--toggle">
|
||||
<span className="label">Enabled</span>
|
||||
<input
|
||||
type="checkbox"
|
||||
checked={advancedRendering.antiAliasing.enabled}
|
||||
onChange={(event) =>
|
||||
applyAdvancedRenderingAntiAliasingEnabled(
|
||||
event.currentTarget.checked
|
||||
)
|
||||
}
|
||||
/>
|
||||
</label>
|
||||
<label className="form-field">
|
||||
<span className="label">Method</span>
|
||||
<select
|
||||
className="select-input"
|
||||
value={advancedRendering.antiAliasing.mode}
|
||||
onChange={(event) =>
|
||||
applyAdvancedRenderingAntiAliasingMode(
|
||||
event.currentTarget
|
||||
.value as AdvancedRenderingAntiAliasingMode
|
||||
)
|
||||
}
|
||||
>
|
||||
{ADVANCED_RENDERING_ANTI_ALIASING_MODES.map(
|
||||
(mode) => (
|
||||
<option key={mode} value={mode}>
|
||||
{formatAdvancedRenderingAntiAliasingModeLabel(
|
||||
mode
|
||||
)}
|
||||
</option>
|
||||
)
|
||||
)}
|
||||
</select>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div className="form-section">
|
||||
<div className="label">Shadows</div>
|
||||
<label className="form-field form-field--toggle">
|
||||
|
||||
@@ -33,6 +33,9 @@ describe("world settings helpers", () => {
|
||||
expect(clone.advancedRendering.dynamicGlobalIllumination).not.toBe(
|
||||
source.advancedRendering.dynamicGlobalIllumination
|
||||
);
|
||||
expect(clone.advancedRendering.antiAliasing).not.toBe(
|
||||
source.advancedRendering.antiAliasing
|
||||
);
|
||||
expect(clone.advancedRendering.whiteboxBevel).not.toBe(
|
||||
source.advancedRendering.whiteboxBevel
|
||||
);
|
||||
@@ -178,6 +181,15 @@ describe("world settings helpers", () => {
|
||||
expect(areWorldSettingsEqual(left, right)).toBe(false);
|
||||
});
|
||||
|
||||
it("treats anti-aliasing settings as part of authored world equality", () => {
|
||||
const left = createDefaultWorldSettings();
|
||||
const right = cloneWorldSettings(left);
|
||||
|
||||
right.advancedRendering.antiAliasing.mode = "fxaa";
|
||||
|
||||
expect(areWorldSettingsEqual(left, right)).toBe(false);
|
||||
});
|
||||
|
||||
it("treats god rays settings as part of authored world equality", () => {
|
||||
const left = createDefaultWorldSettings();
|
||||
const right = cloneWorldSettings(left);
|
||||
|
||||
Reference in New Issue
Block a user