New mission: revamp the portals to make them look actually tolerable to the eye. They are currently placeholders as of now.
The Gold Network: Soyworld | SNCApedia | SoyPlace


I'm not dead, just inactive for the moment. Faggot (talk) 20:16, 9 April 2026 (UTC)

Template:2DSpinCube/style.css: Difference between revisions

From SNCApedia, the shit nobody cares about encyclopedia
Jump to navigationJump to search
No edit summary
Tag: Manual revert
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* Template:2DSpinCube/style.css */
/* Template:2DSpinCube/style.css */
.scene {
.cube2d-scene {
width: 200px;
width: 200px;
height: 200px;
height: 200px;
margin: 100px auto;
/* Changed from 100px to 20px to remove dead space */
margin: 20px auto;  
position: relative;
position: relative;
/* This ensures the container doesn't expand beyond the cube */
overflow: visible;
}
}


.cube {
.cube2d-container {
width: 100%;
width: 100%;
height: 100%;
height: 100%;
Line 13: Line 16:
}
}


.cube-face {
.cube2d-face {
position: absolute;
position: absolute;
width: 200px;
width: 200px;
Line 19: Line 22:
top: 0;
top: 0;
left: 0;
left: 0;
/* This animation mathematically projects 3D rotation into 2D space */
animation: cube2d-spin 8s linear infinite;
animation: fake3D 8s linear infinite;
}
}


/* Offsetting the start times creates the 4 sides of the 3D box */
/* Offsetting the 4 walls */
.face-front { animation-delay: 0s; }
.cube2d-front { animation-delay: 0s; }
.face-right { animation-delay: -2s; }
.cube2d-right { animation-delay: -2s; }
.face-back { animation-delay: -4s; }
.cube2d-back   { animation-delay: -4s; }
.face-left { animation-delay: -6s; }
.cube2d-left   { animation-delay: -6s; }


/* 16-step sine/cosine projection to simulate flawless 3D spinning */
/* 16-step projection */
@keyframes fake3D {
@keyframes cube2d-spin {
0%      { transform: translateX(0px) scaleX(1); z-index: 4; }
0%      { transform: translateX(0px) scaleX(1); z-index: 4; }
6.25%  { transform: translateX(38.3px) scaleX(0.924); z-index: 4; }
6.25%  { transform: translateX(38.3px) scaleX(0.924); z-index: 4; }
Line 41: Line 43:
50%    { transform: translateX(0px) scaleX(-1); z-index: 1; }
50%    { transform: translateX(0px) scaleX(-1); z-index: 1; }
56.25%  { transform: translateX(-38.3px) scaleX(-0.924); z-index: 1; }
56.25%  { transform: translateX(-38.3px) scaleX(-0.924); z-index: 1; }
62.5%  { transform: translateX(-70.7px) scaleX(-0.707); z-index: 2; }
62.5%  { transform: translateX(-70.7px) scaleX(-0.707); z-index: 1; }
68.75%  { transform: translateX(-92.4px) scaleX(-0.383); z-index: 2; }
68.75%  { transform: translateX(-92.4px) scaleX(-0.383); z-index: 2; }
75%    { transform: translateX(-100px) scaleX(0); z-index: 3; }
75%    { transform: translateX(-100px) scaleX(0); z-index: 2; }
81.25%  { transform: translateX(-92.4px) scaleX(0.383); z-index: 3; }
81.25%  { transform: translateX(-92.4px) scaleX(0.383); z-index: 3; }
87.5%  { transform: translateX(-70.7px) scaleX(0.707); z-index: 4; }
87.5%  { transform: translateX(-70.7px) scaleX(0.707); z-index: 3; }
93.75%  { transform: translateX(-38.3px) scaleX(0.924); z-index: 4; }
93.75%  { transform: translateX(-38.3px) scaleX(0.924); z-index: 4; }
100%    { transform: translateX(0px) scaleX(1); z-index: 4; }
100%    { transform: translateX(0px) scaleX(1); z-index: 4; }
}
/* Top/Bottom are hidden as 2D math cannot fake diagonal tumbling */
.face-top, .face-bottom {
display: none;
}
}

Latest revision as of 18:33, 11 April 2026

/* Template:2DSpinCube/style.css */
.cube2d-scene {
	width: 200px;
	height: 200px;
	/* Changed from 100px to 20px to remove dead space */
	margin: 20px auto; 
	position: relative;
	/* This ensures the container doesn't expand beyond the cube */
	overflow: visible; 
}

.cube2d-container {
	width: 100%;
	height: 100%;
	position: relative;
}

.cube2d-face {
	position: absolute;
	width: 200px;
	height: 200px;
	top: 0;
	left: 0;
	animation: cube2d-spin 8s linear infinite;
}

/* Offsetting the 4 walls */
.cube2d-front  { animation-delay: 0s; }
.cube2d-right  { animation-delay: -2s; }
.cube2d-back   { animation-delay: -4s; }
.cube2d-left   { animation-delay: -6s; }

/* 16-step projection */
@keyframes cube2d-spin {
	0%      { transform: translateX(0px) scaleX(1); z-index: 4; }
	6.25%   { transform: translateX(38.3px) scaleX(0.924); z-index: 4; }
	12.5%   { transform: translateX(70.7px) scaleX(0.707); z-index: 4; }
	18.75%  { transform: translateX(92.4px) scaleX(0.383); z-index: 3; }
	25%     { transform: translateX(100px) scaleX(0); z-index: 3; }
	31.25%  { transform: translateX(92.4px) scaleX(-0.383); z-index: 2; }
	37.5%   { transform: translateX(70.7px) scaleX(-0.707); z-index: 2; }
	43.75%  { transform: translateX(38.3px) scaleX(-0.924); z-index: 1; }
	50%     { transform: translateX(0px) scaleX(-1); z-index: 1; }
	56.25%  { transform: translateX(-38.3px) scaleX(-0.924); z-index: 1; }
	62.5%   { transform: translateX(-70.7px) scaleX(-0.707); z-index: 1; }
	68.75%  { transform: translateX(-92.4px) scaleX(-0.383); z-index: 2; }
	75%     { transform: translateX(-100px) scaleX(0); z-index: 2; }
	81.25%  { transform: translateX(-92.4px) scaleX(0.383); z-index: 3; }
	87.5%   { transform: translateX(-70.7px) scaleX(0.707); z-index: 3; }
	93.75%  { transform: translateX(-38.3px) scaleX(0.924); z-index: 4; }
	100%    { transform: translateX(0px) scaleX(1); z-index: 4; }
}