Elin Decompiled Documentation EA 23.299 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

Vector3 _offset
 
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
 

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 90 of file RenderData.cs.

91 {
92 Init();
93 }
void Init()
Definition: RenderData.cs:95

References Init().

◆ ConvertTile()

int RenderData.ConvertTile ( int  tile)
inline

Definition at line 111 of file RenderData.cs.

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

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 85 of file RenderData.cs.

86 {
87 return null;
88 }

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 135 of file RenderData.cs.

136 {
138 MeshBatch meshBatch = meshPass.batches[meshPass.batchIdx];
139 int num = ((p.tile > 0f) ? 1 : (-1));
140 if (useOffsetBack)
141 {
142 _offset = ((p.dir == 2 || p.dir == 3) ? offsetBack : offset);
143 }
144 if (meshPass == pass.subPass)
145 {
146 meshBatch.colors[meshPass.idx] = p.color - 1572864f;
148 }
149 else
150 {
151 meshBatch.colors[meshPass.idx] = p.color;
152 meshBatch.matrices[meshPass.idx].m03 = p.x + _offset.x * (float)num;
153 meshBatch.matrices[meshPass.idx].m13 = p.y + _offset.y;
154 meshBatch.matrices[meshPass.idx].m23 = p.z + _offset.z;
155 }
156 meshBatch.tiles[meshPass.idx] = p.tile + (float)(p.liquidLv * 10000 * num);
157 meshPass.idx++;
158 if (meshPass.idx == meshPass.batchSize)
159 {
160 meshPass.NextBatch();
161 }
162 }
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:60
Vector3 offsetBack
Definition: RenderData.cs:21
bool useOffsetBack
Definition: RenderData.cs:37
Vector3 _offset
Definition: RenderData.cs:11
Vector3 offset
Definition: RenderData.cs:19
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 215 of file RenderData.cs.

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

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 169 of file RenderData.cs.

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

251 {
252 int num = ((p.tile > 0f) ? 1 : (-1));
253 MeshPass shadowPass = pass.shadowPass;
254 MeshBatch meshBatch = shadowPass.batches[shadowPass.batchIdx];
255 meshBatch.matrices[shadowPass.idx].SetTRS(p.NewVector3 + offset + shadowOffset, shadowRotation, shadowScale);
256 meshBatch.tiles[shadowPass.idx] = p.tile;
257 shadowPass.idx++;
258 if (shadowPass.idx == shadowPass.batchSize)
259 {
260 shadowPass.NextBatch();
261 }
262 if (multiSize)
263 {
264 shadowPass = pass.shadowPass;
265 MeshBatch meshBatch2 = shadowPass.batches[shadowPass.batchIdx];
266 meshBatch2.matrices[shadowPass.idx].SetTRS(p.v + offsetShadow, shadowRotation, shadowScale);
267 meshBatch2.tiles[shadowPass.idx] = p.tile - pass.pmesh.tiling.x * (float)num;
268 shadowPass.idx++;
269 if (shadowPass.idx == shadowPass.batchSize)
270 {
271 shadowPass.NextBatch();
272 }
273 }
274 }
MeshPass shadowPass
Definition: MeshPass.cs:19
static Quaternion shadowRotation
Definition: RenderData.cs:71
static Vector3 shadowOffset
Definition: RenderData.cs:75
Vector3 offsetShadow
Definition: RenderData.cs:23
static Vector3 shadowScale
Definition: RenderData.cs:73
bool multiSize
Definition: RenderData.cs:33
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 246 of file RenderData.cs.

247 {
248 }

◆ Init()

void RenderData.Init ( )
inline

Definition at line 95 of file RenderData.cs.

96 {
97 if (!initialized)
98 {
99 initialized = true;
100 _offset = offset;
103 OnInit();
104 }
105 }
MeshPass snowPass
Definition: MeshPass.cs:17
virtual void OnInit()
Definition: RenderData.cs:107
bool initialized
Definition: RenderData.cs:54
bool hasSnowPass
Definition: RenderData.cs:63

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 107 of file RenderData.cs.

108 {
109 }

Referenced by Init().

◆ OnValidate()

void RenderData.OnValidate ( )
inlineprivate

Definition at line 164 of file RenderData.cs.

165 {
166 _offset = offset;
167 }

References _offset, and offset.

◆ RenderToRenderCam()

void RenderData.RenderToRenderCam ( RenderParam  p)
inline

Implements IRenderer.

Definition at line 116 of file RenderData.cs.

117 {
118 Vector3 renderPos = EClass.scene.camSupport.renderPos;
119 if (multiSize)
120 {
121 renderPos.y -= 0.8f;
122 }
123 p.x = renderPos.x;
124 p.y = renderPos.y;
125 p.z = renderPos.z;
126 Draw(p);
127 }
Vector3 renderPos
static Scene scene
Definition: EClass.cs:31
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 57 of file RenderData.cs.

◆ animate

bool RenderData.animate

Definition at line 35 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 43 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 25 of file RenderData.cs.

Referenced by CharaRenderer.DrawHeld().

◆ idShadow

int RenderData.idShadow

Definition at line 15 of file RenderData.cs.

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

◆ imagePivot

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

Definition at line 27 of file RenderData.cs.

◆ imageScale

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

Definition at line 29 of file RenderData.cs.

Referenced by RenderRow.SetImage().

◆ initialized

bool RenderData.initialized

Definition at line 54 of file RenderData.cs.

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

◆ multiSize

◆ offset

◆ offsetBack

Vector3 RenderData.offsetBack

Definition at line 21 of file RenderData.cs.

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

◆ offsetShadow

Vector3 RenderData.offsetShadow

◆ orgX

float RenderData.orgX
private

Definition at line 65 of file RenderData.cs.

◆ orgY

float RenderData.orgY
private

Definition at line 67 of file RenderData.cs.

Referenced by DrawRepeat(), and DrawRepeatTo().

◆ orgZ

float RenderData.orgZ
private

Definition at line 69 of file RenderData.cs.

Referenced by DrawRepeat(), and DrawRepeatTo().

◆ pass

◆ persistActor

bool RenderData.persistActor

Definition at line 39 of file RenderData.cs.

Referenced by CardRenderer.OnLeaveScreen().

◆ renderSetting

GameSetting.RenderSetting RenderData.renderSetting
static

Definition at line 13 of file RenderData.cs.

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

◆ shadowPref

SourcePref RenderData.shadowPref

Definition at line 49 of file RenderData.cs.

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

◆ size

Vector2 RenderData.size

◆ stackZ

float RenderData.stackZ

Definition at line 45 of file RenderData.cs.

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

◆ subCrate

SubPassData RenderData.subCrate

Definition at line 47 of file RenderData.cs.

◆ subData

RenderData RenderData.subData

Definition at line 51 of file RenderData.cs.

◆ symmetry

bool RenderData.symmetry = true

Definition at line 41 of file RenderData.cs.

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

◆ useOffsetBack

bool RenderData.useOffsetBack

Definition at line 37 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 83 of file RenderData.cs.

◆ pathSprite

virtual string RenderData.pathSprite
get

Definition at line 79 of file RenderData.cs.

◆ prefabName

virtual string RenderData.prefabName
get

Definition at line 81 of file RenderData.cs.

◆ shadowOffset

Vector3 RenderData.shadowOffset
staticget

Definition at line 75 of file RenderData.cs.

Referenced by DrawShadow().

◆ shadowRotation

Quaternion RenderData.shadowRotation
staticget

Definition at line 71 of file RenderData.cs.

Referenced by DrawShadow().

◆ shadowScale

Vector3 RenderData.shadowScale
staticget

Definition at line 73 of file RenderData.cs.

Referenced by DrawShadow().

◆ SkipOnMap

virtual bool RenderData.SkipOnMap
get

Definition at line 77 of file RenderData.cs.


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