[Brazilian Portuguese] Apresentação dada na décima edição do FloripaJS mostrando um por trás das cenas do projeto com foco na cena "Present Bounce".
Santa Tracker
View Slide
Desde 2004.
Mais de 23 cenas.
1 cena disponível por dia.
+1.4M visualizaçōes.https://www.similarweb.com/website/santatracker.google.com
The Tracker
Olá!
Eu sou o @MarcoBarbosa
Nós somos a @14islands
@marcobarbosa @hjortureh @ffdead
RetrospectivaÚltimos 3 anos
Santa TrackerPresent Bounce
Box2DBody, Fixture e Shapes
Pode ser dinâmico ou estático.Contém ângulo e posição no mundo.Body
zFixtureContém propriedades físicas:densidade, fricção, etc.
zShapeObjeto 2D geométrico.
ShapeShapeShapeFixture Body
ProtótiposEstudos preliminares
RenderizandoInjetando gráficos nas cenas
ObjectsLevelBox2dDraw()RequestAnimationFrameGameBox2dStep()
RequestAnimationFrameGame
RequestAnimationFrameGameLevel Box2dStep()
RequestAnimationFrameGameLevel Box2dStep()Objects Box2dDraw()
ResponsivoSeguindo o framework
100%80%70%55%40%35%
transform: scale(0.8);100%80%
@media (max-width: 1200px),(max-height: 675px) {.scene {transform: scale(0.8);(…)}}100%80%
@media (max-width: 1000px) and(max-width: 562px) {.scene {transform: scale(0.7);(…)}}100%80%70%
@media (max-width: 400px) and(max-width: 225px) {.scene {transform: scale(0.35);(…)}}100%80%35%70%
AnimaçōesDescomplicadas e “baratas”
Position transform: translate(npx, npx)Scale transform: scale(n)Rotation transform: rotate(ndeg)Opacity opacity: 0…1Animaçōes “baratas”
Gráficos em camadasPara melhor flexibilidade
SVG
.conveyor.conveyor__belt.conveyor__wheel .conveyor__wheel
dash-offset com JavaScripttransform: rotate() transform: rotate()
.spring.spring__top.spring__bottom
transform: translateY()transform: scaleY()
Demo time!
Demo time 2!
Obrigado!