Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
RenderData Class Reference
Inheritance diagram for RenderData:
EScriptable IRenderer RenderDataCard RenderDataEffect RenderDataFish RenderDataTile RenderDataChara RenderDataThing Assets.Resources.Scene.Render.RenderDataRoof RenderDataHalfBlock RenderDataLiquid RenderDataObj RenderDataPcc RenderDataCrate RenderDataObjAdd RenderDataObjDummy RenderDataObjV

Public Member Functions

virtual CardActor CreateActor ()
 
void Init ()
 
virtual void OnInit ()
 
int ConvertTile (int tile)
 
void RenderToRenderCam (RenderParam p)
 
void Draw (RenderParam p, int tile)
 
virtual void Draw (RenderParam p)
 
void DrawRepeatTo (RenderParam p, float maxY, float height, ref Vector3 peakFix, bool skipFirst=false, int fire=0, bool isBlock=false)
 
void DrawRepeat (RenderParam p, int count, float size, bool skipFirst=false)
 
virtual void DrawWithRotation (RenderParam p, float angle)
 
virtual void DrawShadow (RenderParam p)
 
void RenderToRenderCam (RenderParam p)
 
void Draw (RenderParam p)
 

Public Attributes

int idShadow
 
MeshPass pass
 
Vector3 offset
 
Vector3 offsetBack
 
Vector3 offsetShadow
 
Vector3 heldPos
 
Vector2 imagePivot = new Vector2(0.5f, 0.25f)
 
Vector2 imageScale = new Vector2(1f, 1f)
 
Vector2 size
 
bool multiSize
 
bool animate
 
bool useOffsetBack
 
bool persistActor
 
bool symmetry = true
 
float hangedFixZ
 
float stackZ
 
SubPassData subCrate
 
SourcePref shadowPref
 
RenderData subData
 
bool initialized
 
bool hasSubPass
 
bool hasSnowPass
 

Static Public Attributes

const int HeldLightMod = 1572864
 
static Quaternion deadRotation = Quaternion.Euler(0f, 0f, 90f)
 
static GameSetting.RenderSetting renderSetting
 

Protected Attributes

Vector3 _offset
 

Properties

static Quaternion shadowRotation [get]
 
static Vector3 shadowScale [get]
 
static Vector3 shadowOffset [get]
 
virtual bool SkipOnMap [get]
 
virtual string pathSprite [get]
 
virtual string prefabName [get]
 
virtual bool ForceAltHeldPosition [get]
 

Private Member Functions

void Awake ()
 
void OnValidate ()
 

Private Attributes

Sprite _sprite
 
float orgX
 
float orgY
 
float orgZ
 

Additional Inherited Members

- Static Public Member Functions inherited from EScriptable
static int rnd (int a)
 

Detailed Description

Definition at line 4 of file RenderData.cs.

Member Function Documentation

◆ Awake()

void RenderData.Awake ( )
inlineprivate

Definition at line 89 of file RenderData.cs.

90 {
91 Init();
92 }
void Init()
Definition: RenderData.cs:94

References Init().

◆ ConvertTile()

int RenderData.ConvertTile ( int  tile)
inline

Definition at line 110 of file RenderData.cs.

111 {
112 return tile / 100 * (int)pass.pmesh.tiling.x + tile % 100;
113 }
ProceduralMesh pmesh
Definition: MeshPass.cs:25
MeshPass pass
Definition: RenderData.cs:16

References pass, MeshPass.pmesh, and ProceduralMesh.tiling.

Referenced by GrowSystem.Stage.Convert(), RenderRow.ConvertTile(), BaseTileMap.DrawRoof(), GrowSystem.Init(), TraitShrine.OnRenderExtra(), and Chara.SetTempHand().

◆ CreateActor()

virtual CardActor RenderData.CreateActor ( )
inlinevirtual

Reimplemented in RenderDataCard.

Definition at line 84 of file RenderData.cs.

85 {
86 return null;
87 }

Referenced by CardRenderer.OnEnterScreen().

◆ Draw() [1/2]

virtual void RenderData.Draw ( RenderParam  p)
inlinevirtual

Implements IRenderer.

Reimplemented in Assets.Resources.Scene.Render.RenderDataRoof, RenderDataHalfBlock, RenderDataLiquid, RenderDataObj, RenderDataObjAdd, RenderDataObjV, and RenderDataTile.

Definition at line 134 of file RenderData.cs.

135 {
137 MeshBatch meshBatch = meshPass.batches[meshPass.batchIdx];
138 int num = ((p.tile > 0f) ? 1 : (-1));
139 if (useOffsetBack)
140 {
141 _offset = ((p.dir == 2 || p.dir == 3) ? offsetBack : offset);
142 }
143 if (meshPass == pass.subPass)
144 {
145 meshBatch.colors[meshPass.idx] = p.color - 1572864f;
147 }
148 else
149 {
150 meshBatch.colors[meshPass.idx] = p.color;
151 meshBatch.matrices[meshPass.idx].m03 = p.x + _offset.x * (float)num;
152 meshBatch.matrices[meshPass.idx].m13 = p.y + _offset.y;
153 meshBatch.matrices[meshPass.idx].m23 = p.z + _offset.z;
154 }
155 meshBatch.tiles[meshPass.idx] = p.tile + (float)(p.liquidLv * 10000 * num);
156 meshPass.idx++;
157 if (meshPass.idx == meshPass.batchSize)
158 {
159 meshPass.NextBatch();
160 }
161 }
Matrix4x4[] matrices
Definition: MeshBatch.cs:5
float[] tiles
Definition: MeshBatch.cs:7
float[] colors
Definition: MeshBatch.cs:9
MeshPass subPass
Definition: MeshPass.cs:15
int batchIdx
Definition: MeshPass.cs:60
void NextBatch()
Definition: MeshPass.cs:417
int batchSize
Definition: MeshPass.cs:63
List< MeshBatch > batches
Definition: MeshPass.cs:66
int idx
Definition: MeshPass.cs:57
bool hasSubPass
Definition: RenderData.cs:59
Vector3 offsetBack
Definition: RenderData.cs:20
bool useOffsetBack
Definition: RenderData.cs:36
Vector3 _offset
Definition: RenderData.cs:10
Vector3 offset
Definition: RenderData.cs:18
int liquidLv
Definition: RenderParam.cs:7
Vector3 NewVector3
Definition: RenderParam.cs:23
Quaternion rotation
Definition: SubPassData.cs:15
Vector3 scale
Definition: SubPassData.cs:13
static SubPassData Current
Definition: SubPassData.cs:9
Vector3 offset
Definition: SubPassData.cs:11

References _offset, MeshPass.batches, MeshPass.batchIdx, MeshPass.batchSize, MeshPassParam.color, MeshBatch.colors, SubPassData.Current, SubPassData.enable, hasSubPass, MeshPass.idx, RenderParam.liquidLv, MeshBatch.matrices, RenderParam.NewVector3, MeshPass.NextBatch(), offset, SubPassData.offset, offsetBack, pass, SubPassData.rotation, SubPassData.scale, MeshPass.subPass, MeshBatch.tiles, and useOffsetBack.

◆ Draw() [2/2]

◆ DrawRepeat()

void RenderData.DrawRepeat ( RenderParam  p,
int  count,
float  size,
bool  skipFirst = false 
)
inline

Definition at line 214 of file RenderData.cs.

215 {
216 if (count == 1)
217 {
218 if (!skipFirst)
219 {
220 Draw(p);
221 }
222 return;
223 }
224 bool snow = p.snow;
225 orgY = p.y;
226 orgZ = p.z;
227 p.snow = false;
228 for (int i = 0; i < count; i++)
229 {
230 if (i == count - 1)
231 {
232 p.snow = snow;
233 }
234 if (i != 0 || !skipFirst)
235 {
236 Draw(p);
237 }
238 p.y += renderSetting.peakFix.y * size;
239 p.z += renderSetting.peakFix.z * size;
240 }
241 p.y = orgY;
242 p.z = orgZ;
243 }
float orgZ
Definition: RenderData.cs:68
float orgY
Definition: RenderData.cs:66
Vector2 size
Definition: RenderData.cs:30

References Draw, orgY, orgZ, size, MeshPassParam.snow, MeshPassParam.y, and MeshPassParam.z.

Referenced by BaseTileMap.DrawTile(), TileMapElona.DrawTile(), and Recipe.OnRenderMarker().

◆ DrawRepeatTo()

void RenderData.DrawRepeatTo ( RenderParam  p,
float  maxY,
float  height,
ref Vector3  peakFix,
bool  skipFirst = false,
int  fire = 0,
bool  isBlock = false 
)
inline

Definition at line 168 of file RenderData.cs.

169 {
170 int num = (int)((maxY + height + peakFix.x - p.y) / peakFix.y);
171 bool snow = p.snow;
172 if (num == 0)
173 {
174 if (!skipFirst)
175 {
176 Draw(p);
177 }
178 return;
179 }
180 orgY = p.y;
181 orgZ = p.z;
182 p.snow = !isBlock && snow;
183 for (int i = 0; i < num + 1; i++)
184 {
185 if (i == num)
186 {
187 p.y = maxY + height - peakFix.y;
188 p.z -= peakFix.z + peakFix.x;
189 p.snow = snow;
190 }
191 if (skipFirst)
192 {
193 if (i != 0 && num > 1)
194 {
195 Draw(p);
196 }
197 }
198 else
199 {
200 Draw(p);
201 }
202 if (fire > 0 && i != num)
203 {
205 fire--;
206 }
207 p.y += peakFix.y;
208 p.z += peakFix.z;
209 }
210 p.y = orgY;
211 p.z = orgZ;
212 }
BaseTileMap tileMap
RenderDataEffect rendererEffect
Definition: BaseTileMap.cs:229
Definition: EClass.cs:5
static BaseGameScreen screen
Definition: EClass.cs:32
new void Draw(RenderParam p, int tile=0)

References Draw, RenderDataEffect.Draw(), orgY, orgZ, BaseTileMap.rendererEffect, EClass.screen, MeshPassParam.snow, BaseGameScreen.tileMap, MeshPassParam.y, and MeshPassParam.z.

◆ DrawShadow()

virtual void RenderData.DrawShadow ( RenderParam  p)
inlinevirtual

Definition at line 249 of file RenderData.cs.

250 {
251 int num = ((p.tile > 0f) ? 1 : (-1));
252 MeshPass shadowPass = pass.shadowPass;
253 MeshBatch meshBatch = shadowPass.batches[shadowPass.batchIdx];
254 meshBatch.matrices[shadowPass.idx].SetTRS(p.NewVector3 + offset + shadowOffset, shadowRotation, shadowScale);
255 meshBatch.tiles[shadowPass.idx] = p.tile;
256 shadowPass.idx++;
257 if (shadowPass.idx == shadowPass.batchSize)
258 {
259 shadowPass.NextBatch();
260 }
261 if (multiSize)
262 {
263 shadowPass = pass.shadowPass;
264 MeshBatch meshBatch2 = shadowPass.batches[shadowPass.batchIdx];
265 meshBatch2.matrices[shadowPass.idx].SetTRS(p.v + offsetShadow, shadowRotation, shadowScale);
266 meshBatch2.tiles[shadowPass.idx] = p.tile - pass.pmesh.tiling.x * (float)num;
267 shadowPass.idx++;
268 if (shadowPass.idx == shadowPass.batchSize)
269 {
270 shadowPass.NextBatch();
271 }
272 }
273 }
MeshPass shadowPass
Definition: MeshPass.cs:19
static Quaternion shadowRotation
Definition: RenderData.cs:70
static Vector3 shadowOffset
Definition: RenderData.cs:74
Vector3 offsetShadow
Definition: RenderData.cs:22
static Vector3 shadowScale
Definition: RenderData.cs:72
bool multiSize
Definition: RenderData.cs:32
Vector3 v
Definition: RenderParam.cs:19

References MeshPass.batches, MeshPass.batchIdx, MeshPass.batchSize, MeshPass.idx, MeshBatch.matrices, multiSize, RenderParam.NewVector3, MeshPass.NextBatch(), offset, offsetShadow, pass, shadowOffset, MeshPass.shadowPass, shadowRotation, shadowScale, MeshPassParam.tile, MeshBatch.tiles, and RenderParam.v.

◆ DrawWithRotation()

virtual void RenderData.DrawWithRotation ( RenderParam  p,
float  angle 
)
inlinevirtual

Reimplemented in RenderDataTile.

Definition at line 245 of file RenderData.cs.

246 {
247 }

◆ Init()

void RenderData.Init ( )
inline

Definition at line 94 of file RenderData.cs.

95 {
96 if (!initialized)
97 {
98 initialized = true;
102 OnInit();
103 }
104 }
MeshPass snowPass
Definition: MeshPass.cs:17
virtual void OnInit()
Definition: RenderData.cs:106
bool initialized
Definition: RenderData.cs:53
bool hasSnowPass
Definition: RenderData.cs:62

References _offset, hasSnowPass, hasSubPass, initialized, offset, OnInit(), pass, MeshPass.snowPass, and MeshPass.subPass.

Referenced by Core.Awake(), Awake(), and RenderRow.SetRenderData().

◆ OnInit()

virtual void RenderData.OnInit ( )
inlinevirtual

Definition at line 106 of file RenderData.cs.

107 {
108 }

Referenced by Init().

◆ OnValidate()

void RenderData.OnValidate ( )
inlineprivate

Definition at line 163 of file RenderData.cs.

164 {
165 _offset = offset;
166 }

References _offset, and offset.

◆ RenderToRenderCam()

void RenderData.RenderToRenderCam ( RenderParam  p)
inline

Implements IRenderer.

Definition at line 115 of file RenderData.cs.

116 {
117 Vector3 renderPos = EClass.scene.camSupport.renderPos;
118 if (multiSize)
119 {
120 renderPos.y -= 0.8f;
121 }
122 p.x = renderPos.x;
123 p.y = renderPos.y;
124 p.z = renderPos.z;
125 Draw(p);
126 }
Vector3 renderPos
static Scene scene
Definition: EClass.cs:30
CameraSupport camSupport
Definition: Scene.cs:41

References Scene.camSupport, Draw, multiSize, CameraSupport.renderPos, and EClass.scene.

Member Data Documentation

◆ _offset

◆ _sprite

Sprite RenderData._sprite
private

Definition at line 56 of file RenderData.cs.

◆ animate

bool RenderData.animate

Definition at line 34 of file RenderData.cs.

Referenced by CharaRenderer.UpdatePosition().

◆ deadRotation

Quaternion RenderData.deadRotation = Quaternion.Euler(0f, 0f, 90f)
static

Definition at line 8 of file RenderData.cs.

◆ hangedFixZ

float RenderData.hangedFixZ

Definition at line 42 of file RenderData.cs.

Referenced by BaseTileMap.DrawTile().

◆ hasSnowPass

◆ hasSubPass

◆ HeldLightMod

const int RenderData.HeldLightMod = 1572864
static

Definition at line 6 of file RenderData.cs.

◆ heldPos

Vector3 RenderData.heldPos

Definition at line 24 of file RenderData.cs.

Referenced by CharaRenderer.DrawHeld().

◆ idShadow

int RenderData.idShadow

Definition at line 14 of file RenderData.cs.

Referenced by BaseTileMap.DrawTile(), and TileMapElona.DrawTile().

◆ imagePivot

Vector2 RenderData.imagePivot = new Vector2(0.5f, 0.25f)

Definition at line 26 of file RenderData.cs.

◆ imageScale

Vector2 RenderData.imageScale = new Vector2(1f, 1f)

Definition at line 28 of file RenderData.cs.

Referenced by RenderRow.SetImage().

◆ initialized

bool RenderData.initialized

Definition at line 53 of file RenderData.cs.

Referenced by Init(), and RenderRow.SetRenderData().

◆ multiSize

◆ offset

◆ offsetBack

Vector3 RenderData.offsetBack

Definition at line 20 of file RenderData.cs.

Referenced by Draw(), RenderDataObj.Draw(), and RenderDataTile.Draw().

◆ offsetShadow

Vector3 RenderData.offsetShadow

◆ orgX

float RenderData.orgX
private

Definition at line 64 of file RenderData.cs.

◆ orgY

float RenderData.orgY
private

Definition at line 66 of file RenderData.cs.

Referenced by DrawRepeat(), and DrawRepeatTo().

◆ orgZ

float RenderData.orgZ
private

Definition at line 68 of file RenderData.cs.

Referenced by DrawRepeat(), and DrawRepeatTo().

◆ pass

◆ persistActor

bool RenderData.persistActor

Definition at line 38 of file RenderData.cs.

Referenced by CardRenderer.OnLeaveScreen().

◆ renderSetting

GameSetting.RenderSetting RenderData.renderSetting
static

Definition at line 12 of file RenderData.cs.

Referenced by RenderDataObjV.Draw(), and RenderDataTile.Draw().

◆ shadowPref

SourcePref RenderData.shadowPref

Definition at line 48 of file RenderData.cs.

Referenced by CardRenderer.Draw(), BaseTileMap.DrawTile(), and TileMapElona.DrawTile().

◆ size

◆ stackZ

float RenderData.stackZ

Definition at line 44 of file RenderData.cs.

Referenced by BaseTileMap.DrawTile(), and BaseTileMap.GetThingPosition().

◆ subCrate

SubPassData RenderData.subCrate

Definition at line 46 of file RenderData.cs.

◆ subData

RenderData RenderData.subData

Definition at line 50 of file RenderData.cs.

◆ symmetry

bool RenderData.symmetry = true

Definition at line 40 of file RenderData.cs.

Referenced by RenderDataTile.Draw(), and CardActor.OnRender().

◆ useOffsetBack

bool RenderData.useOffsetBack

Definition at line 36 of file RenderData.cs.

Referenced by Draw(), RenderDataObj.Draw(), RenderDataTile.Draw(), and CardActor.OnRender().

Property Documentation

◆ ForceAltHeldPosition

virtual bool RenderData.ForceAltHeldPosition
get

Definition at line 82 of file RenderData.cs.

◆ pathSprite

virtual string RenderData.pathSprite
get

Definition at line 78 of file RenderData.cs.

◆ prefabName

virtual string RenderData.prefabName
get

Definition at line 80 of file RenderData.cs.

◆ shadowOffset

Vector3 RenderData.shadowOffset
staticget

Definition at line 74 of file RenderData.cs.

Referenced by DrawShadow().

◆ shadowRotation

Quaternion RenderData.shadowRotation
staticget

Definition at line 70 of file RenderData.cs.

Referenced by DrawShadow().

◆ shadowScale

Vector3 RenderData.shadowScale
staticget

Definition at line 72 of file RenderData.cs.

Referenced by DrawShadow().

◆ SkipOnMap

virtual bool RenderData.SkipOnMap
get

Definition at line 76 of file RenderData.cs.


The documentation for this class was generated from the following file: