Class WorldPainter
java.lang.Object
net.ixdarklord.folios.internal.client.paint.AbstractPainter
net.ixdarklord.folios.internal.client.paint.WorldPainter
- All Implemented Interfaces:
FoliosPainter
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceA curved page: where a point of it is in the pose's space, and which way its axes point there.Nested classes/interfaces inherited from class AbstractPainter
AbstractPainter.Hit, AbstractPainter.NavigatorNested classes/interfaces inherited from interface FoliosPainter
FoliosPainter.Drag, FoliosPainter.Scroll -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final floatHow high above the page its content reaches on a full page (some 150 things drawn, items on top): a leaf over it stays above this.static final net.minecraft.resources.IdentifierFields inherited from class AbstractPainter
font, navigator, palette, session -
Constructor Summary
ConstructorsConstructorDescriptionWorldPainter(com.mojang.blaze3d.vertex.PoseStack pose, net.minecraft.client.renderer.SubmitNodeCollector collector, int light, FoliosPalette palette, FoliosSession session, AbstractPainter.Navigator navigator, float time, float pointerX, float pointerY, List<AbstractPainter.Hit> hits) WorldPainter(com.mojang.blaze3d.vertex.PoseStack pose, net.minecraft.client.renderer.SubmitNodeCollector collector, int light, FoliosPalette palette, FoliosSession session, AbstractPainter.Navigator navigator, float time, float pointerX, float pointerY, List<AbstractPainter.Hit> hits, @Nullable WorldPainter.Surface surface) -
Method Summary
Modifier and TypeMethodDescriptionvoidDraws over everything drawn so far, items included (which otherwise lie over flat things drawn after them): for a reveal's effect about an item or over a whole page.voidcutout(net.minecraft.resources.Identifier texture, int x, int y, int width, int height, float u0, float v0, float u1, float v1, int argb) A texture whose see-through pixels are cut away rather than blended: for a shape cut out of its texture (a ribbon's swallowtail, a plate's rounded corners) over things drawn after it, which a blended one's clear corners would hide.protected voiddrawItem(net.minecraft.world.item.ItemStack stack, int x, int y, int argb) Draws an item, tinted byargb(white and opaque: as it is).voidend()Ends the page: sends its plain shapes and undoes its moves.voidfill(int x0, int y0, int x1, int y1, int argb) booleanflat()Whether the page is on a screen (true), or on a book in the world (false).lightAs(org.joml.Vector3f normal) Lights everything on the page as if it faced this way (a direction in view space), whichever way it turns.intintThe size of the page being drawn: the default page's unless the book's pages are larger (a screen book at a small GUI scale).voidpaper(float x0, float y0, float x1, float y1, int color) The paper itself, under everything else, over a rectangle of the page.voidpaper(float x0, float y0, float x1, float y1, int color, net.minecraft.resources.Identifier texture) The paper itself from a texture, tinted, under everything else, over a rectangle of the page.voidpaper(float x0, float y0, float x1, float y1, int color, net.minecraft.resources.Identifier texture, float fold, int shade, boolean spineRight) The paper from a texture, darkening smoothly toshadeover the lastfoldpixels before its spine edge (its right edge forspineRight, else its left): the shadow of a book's fold, in the paper itself so nothing lies over it.protected voidpopped()voidprinting(boolean printing) Whether what is drawn now is printed on the leaf, at its pages' size, rather than the leaf's own frame and chrome.protected voidpushed()protected voidscaled(float factor) voidscene(net.ixdarklord.coolcatcanvas.api.client.viewport.SceneViewport viewport, int x, int y, int width, int height) A scene's picture; the painter keeps it in use while it is drawn.voidscene(net.ixdarklord.coolcatcanvas.api.client.viewport.SceneViewport viewport, int x, int y, int width, int height, float u0, float u1) AsFoliosPainter.scene(SceneViewport, int, int, int, int), showing only the part of it fromu0tou1across (0 to 1).voidscene(net.ixdarklord.coolcatcanvas.api.client.viewport.SceneViewport viewport, int x, int y, int width, int height, float u0, float v0, float u1, float v1, int argb) AsFoliosPainter.scene(SceneViewport, int, int, int, int), showing only the part of it from (u0,v0) to (u1,v1) (0 to 1, from its top left), tinted byargb: its alpha fades the picture.voidtext(net.minecraft.util.FormattedCharSequence text, int x, int y, int argb) voidtexture(net.minecraft.resources.Identifier texture, int x, int y, int width, int height, float u0, float v0, float u1, float v1, int argb) A part of a texture, from its (u0, v0) to its (u1, v1), each 0 to 1, tinted byargb.protected voidtranslated(float x, float y) Methods inherited from class AbstractPainter
action, drag, font, hovered, item, item, link, pageScale, pageX, pageY, palette, pop, popup, push, scale, scroll, time, tooltip, tooltip, tooltip, tooltipLines, translateMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface FoliosPainter
centeredText, contentBottom, contentRight, text
-
Field Details
-
WHITE
public static final net.minecraft.resources.Identifier WHITE -
HEIGHT
public static final float HEIGHTHow high above the page its content reaches on a full page (some 150 things drawn, items on top): a leaf over it stays above this.- See Also:
-
-
Constructor Details
-
Method Details
-
lightAs
Lights everything on the page as if it faced this way (a direction in view space), whichever way it turns. -
printing
public void printing(boolean printing) Whether what is drawn now is printed on the leaf, at its pages' size, rather than the leaf's own frame and chrome. -
pageWidth
public int pageWidth()Description copied from interface:FoliosPainterThe size of the page being drawn: the default page's unless the book's pages are larger (a screen book at a small GUI scale).- Specified by:
pageWidthin interfaceFoliosPainter- Overrides:
pageWidthin classAbstractPainter
-
pageHeight
public int pageHeight()- Specified by:
pageHeightin interfaceFoliosPainter- Overrides:
pageHeightin classAbstractPainter
-
end
public void end()Ends the page: sends its plain shapes and undoes its moves. -
flat
public boolean flat()Description copied from interface:FoliosPainterWhether the page is on a screen (true), or on a book in the world (false). -
above
Description copied from class:AbstractPainterDraws over everything drawn so far, items included (which otherwise lie over flat things drawn after them): for a reveal's effect about an item or over a whole page.- Overrides:
abovein classAbstractPainter
-
paper
public void paper(float x0, float y0, float x1, float y1, int color) The paper itself, under everything else, over a rectangle of the page. -
fill
public void fill(int x0, int y0, int x1, int y1, int argb) -
text
public void text(net.minecraft.util.FormattedCharSequence text, int x, int y, int argb) -
texture
public void texture(net.minecraft.resources.Identifier texture, int x, int y, int width, int height, float u0, float v0, float u1, float v1, int argb) Description copied from interface:FoliosPainterA part of a texture, from its (u0, v0) to its (u1, v1), each 0 to 1, tinted byargb. -
cutout
public void cutout(net.minecraft.resources.Identifier texture, int x, int y, int width, int height, float u0, float v0, float u1, float v1, int argb) A texture whose see-through pixels are cut away rather than blended: for a shape cut out of its texture (a ribbon's swallowtail, a plate's rounded corners) over things drawn after it, which a blended one's clear corners would hide. Opaque only: its colour's alpha is ignored. -
paper
public void paper(float x0, float y0, float x1, float y1, int color, net.minecraft.resources.Identifier texture) The paper itself from a texture, tinted, under everything else, over a rectangle of the page. -
paper
public void paper(float x0, float y0, float x1, float y1, int color, net.minecraft.resources.Identifier texture, float fold, int shade, boolean spineRight) The paper from a texture, darkening smoothly toshadeover the lastfoldpixels before its spine edge (its right edge forspineRight, else its left): the shadow of a book's fold, in the paper itself so nothing lies over it. -
drawItem
protected void drawItem(net.minecraft.world.item.ItemStack stack, int x, int y, int argb) Description copied from class:AbstractPainterDraws an item, tinted byargb(white and opaque: as it is).- Specified by:
drawItemin classAbstractPainter
-
scene
public void scene(net.ixdarklord.coolcatcanvas.api.client.viewport.SceneViewport viewport, int x, int y, int width, int height) Description copied from interface:FoliosPainterA scene's picture; the painter keeps it in use while it is drawn. -
scene
public void scene(net.ixdarklord.coolcatcanvas.api.client.viewport.SceneViewport viewport, int x, int y, int width, int height, float u0, float u1) Description copied from interface:FoliosPainterAsFoliosPainter.scene(SceneViewport, int, int, int, int), showing only the part of it fromu0tou1across (0 to 1). -
scene
public void scene(net.ixdarklord.coolcatcanvas.api.client.viewport.SceneViewport viewport, int x, int y, int width, int height, float u0, float v0, float u1, float v1, int argb) Description copied from interface:FoliosPainterAsFoliosPainter.scene(SceneViewport, int, int, int, int), showing only the part of it from (u0,v0) to (u1,v1) (0 to 1, from its top left), tinted byargb: its alpha fades the picture. -
pushed
protected void pushed()- Specified by:
pushedin classAbstractPainter
-
popped
protected void popped()- Specified by:
poppedin classAbstractPainter
-
translated
protected void translated(float x, float y) - Specified by:
translatedin classAbstractPainter
-
scaled
protected void scaled(float factor) - Specified by:
scaledin classAbstractPainter
-