UltimateZoneBuilder/Source/Core/Rendering/IRenderer3D.cs
MaxED 16b97e1c83 Added GLDEFS and (Z)MAPINFO parsers.
Dynamic lights defined in GLDEFS are now rendered in Visual modes (currently only one light per Thing is supported).
Several values from (Z)MAPINFO are now used in Visual modes.
Added "Reload GLDEFS", "Reload (Z)MAPINFO" and "Reload MODELDEF" menu options (in "Tools" section).
MODELDEF parser now checks which model(s) is/are used in first frame.
Dynamic lights are now created with more meaningful default parameters.
Added errors and warnings indicator to main window.
2012-06-01 10:17:47 +00:00

72 lines
1.8 KiB
C#

#region ================== Copyright (c) 2007 Pascal vd Heiden
/*
* Copyright (c) 2007 Pascal vd Heiden, www.codeimp.com
* This program is released under GNU General Public License
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#endregion
#region ================== Namespaces
using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Reflection;
using System.Drawing;
using System.ComponentModel;
using CodeImp.DoomBuilder.Map;
using SlimDX.Direct3D9;
using SlimDX;
using CodeImp.DoomBuilder.Geometry;
using System.Drawing.Imaging;
using CodeImp.DoomBuilder.Data;
using CodeImp.DoomBuilder.Editing;
using CodeImp.DoomBuilder.VisualModes;
#endregion
namespace CodeImp.DoomBuilder.Rendering
{
public interface IRenderer3D
{
// Properties
ProjectedFrustum2D Frustum2D { get; }
bool DrawThingCages { get; set; }
bool FullBrightness { get; set; }
bool ShowSelection { get; set; }
bool ShowHighlight { get; set; }
// General methods
void PositionAndLookAt(Vector3D pos, Vector3D lookat);
// Presenting methods
void Finish();
bool Start();
void StartGeometry();
void FinishGeometry();
// Rendering methods
int CalculateBrightness(int level);
//mxd
int CalculateBrightness(int level, Sidedef sd);
void SetHighlightedObject(IVisualPickable obj);
void AddSectorGeometry(VisualGeometry g);
void AddThingGeometry(VisualThing t);
void RenderCrosshair();
void SetFogMode(bool usefog);
void SetCrosshairBusy(bool busy);
}
}