<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:media="http://search.yahoo.com/mrss/"
	
	>

<channel>
	<title>xiaozhou</title>
	<link>https://xiaozhou.org</link>
	<description>xiaozhou</description>
	<pubDate>Sat, 09 Nov 2024 17:08:45 +0000</pubDate>
	<generator>https://xiaozhou.org</generator>
	<language>en</language>
	
		
	<item>
		<title>index</title>
				
		<link>https://xiaozhou.org/index</link>

		<pubDate>Wed, 20 Sep 2023 17:27:11 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/index</guid>

		<description></description>
		
	</item>
		
		
	<item>
		<title>Game Overview</title>
				
		<link>https://xiaozhou.org/Game-Overview</link>

		<pubDate>Wed, 20 Sep 2023 19:21:10 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Game-Overview</guid>

		<description>




    
    
    
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 

    &#60;img width="577" height="70" width_o="577" height_o="70" data-src="https://freight.cargo.site/t/original/i/4ffd2bded4cb181dd8bb43eee84867f191c04591563d020e0215001926c8883f/banner-invert.png" data-mid="192492511" border="0"  src="https://freight.cargo.site/w/577/i/4ffd2bded4cb181dd8bb43eee84867f191c04591563d020e0215001926c8883f/banner-invert.png" /&#62;


&#60;img width="577" height="70" width_o="577" height_o="70" data-src="https://freight.cargo.site/t/original/i/4ffd2bded4cb181dd8bb43eee84867f191c04591563d020e0215001926c8883f/banner-invert.png" data-mid="192492511" border="0" data-scale="62" src="https://freight.cargo.site/w/577/i/4ffd2bded4cb181dd8bb43eee84867f191c04591563d020e0215001926c8883f/banner-invert.png" /&#62;
Mixed Reality ExperienceSystem Design, Program, Art, UX
#Unity, C#




	
    
    
    
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 

   
   
&#60;img width="3325" height="332" width_o="3325" height_o="332" data-src="https://freight.cargo.site/t/original/i/a49462702ad3f5b3bf724090772a59988107a60800fcd6fa5ab0810739509da9/title.png" data-mid="196209007" border="0" data-scale="74" src="https://freight.cargo.site/w/1000/i/a49462702ad3f5b3bf724090772a59988107a60800fcd6fa5ab0810739509da9/title.png" /&#62;
QuestSystem/Level Design, Program, Art, UX
#UE5, C++


	
    
    
    
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 

   
   
&#60;img width="738" height="41" width_o="738" height_o="41" data-src="https://freight.cargo.site/t/original/i/9b5724718f103fbbc3f83d31536e08b53199128b130d98e70f930f3ae1fe1f36/banner-transparent.png" data-mid="192485969" border="0"  src="https://freight.cargo.site/w/738/i/9b5724718f103fbbc3f83d31536e08b53199128b130d98e70f930f3ae1fe1f36/banner-transparent.png" /&#62;
Puzzle PlatformerGame/System/Level Design, Program, Art, UX, QA
#Unity, C#



    
    
    
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 

    &#60;img width="577" height="70" width_o="577" height_o="70" data-src="https://freight.cargo.site/t/original/i/4ffd2bded4cb181dd8bb43eee84867f191c04591563d020e0215001926c8883f/banner-invert.png" data-mid="192492511" border="0"  src="https://freight.cargo.site/w/577/i/4ffd2bded4cb181dd8bb43eee84867f191c04591563d020e0215001926c8883f/banner-invert.png" /&#62;


&#60;img width="2124" height="234" width_o="2124" height_o="234" data-src="https://freight.cargo.site/t/original/i/5342990900250c4a1e32de351c7226d62790d9fcf94045028f7d418dfdb05352/title.png" data-mid="221489376" border="0"  src="https://freight.cargo.site/w/1000/i/5342990900250c4a1e32de351c7226d62790d9fcf94045028f7d418dfdb05352/title.png" /&#62;
Mixed Reality ExperienceSystem Design, Program, Art, UX
#Unity, C#


    
    





</description>
		
	</item>
		
		
	<item>
		<title>Head of Delivery</title>
				
		<link>https://xiaozhou.org/Head-of-Delivery</link>

		<pubDate>Wed, 20 Sep 2023 17:27:11 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Head-of-Delivery</guid>

		<description>
	
	

	
    
    
    


	


&#60;img width="738" height="41" width_o="738" height_o="41" data-src="https://freight.cargo.site/t/original/i/9b5724718f103fbbc3f83d31536e08b53199128b130d98e70f930f3ae1fe1f36/banner-transparent.png" data-mid="191514187" border="0"  src="https://freight.cargo.site/w/738/i/9b5724718f103fbbc3f83d31536e08b53199128b130d98e70f930f3ae1fe1f36/banner-transparent.png" /&#62;Puzzel + Platformer - Fix some broken scaffoldings as a slient new staff&#38;nbsp;






	Role : Game/Level Design, Programmer, Art

Tech detail:&#38;nbsp; Unity, C#, Lua

Timeframe :  5 Months, May - Oct 2023


Demo :  https://shellciao.itch.io/head-of-delivery


	Overview

What are the potential of self-made platforms, how would it affect player’s puzzel solving experience? Head of Delivery is a prototype experimented on this topic. The puzzle solving styles are affected by player’s platforming skills while platforms are created by puzzle solutions.
Born out of Ludum Dare 53.





	

Task Overview



	

Created an event-driven system that guides game progress and level switching.Designed and implemented coupled economy and ability systems which promote different playing styles.Designed all levels with trophies and hidden easter egg events about the game’s background story.Developed the tutorial and helper systems to encourage player investment in the puzzle-solving process.
Created all cutscenes and triggers and dialogue writing.

	

Design Decision + Learning


	
System Design&#38;nbsp;Economy: Paint + Step + Token + Shop


&#60;img width="1795" height="1086" width_o="1795" height_o="1086" data-src="https://freight.cargo.site/t/original/i/0c3ec76b744f56cf20e4771e33cd2cdbf339a61a9788c76446e3b1322471280e/economy.JPG" data-mid="193808276" border="0" data-scale="60" src="https://freight.cargo.site/w/1000/i/0c3ec76b744f56cf20e4771e33cd2cdbf339a61a9788c76446e3b1322471280e/economy.JPG" /&#62;
The game has 3 intertwined concepts, paint, step and token:  

player are given paint at the begininng of each leveleach step will consume 1 unit of painteach unused paint equates to 2 tokens at payment&#38;nbsp;each tile placed equates to 1 token at paymentThe tokens are the primary reward in the system and can be used to purchase abilities in the shop.

	

Player’s decisions on movement and tile placing results in different strategies in achieving the game, thus have the potential of developing player styles in the game. Hidden token bags are up for grabs, they are located at difficult to reach positions and would require player to have unused paint at this level. The exchange machine adds a random factor, players can exchange unused paints for either 1 or 3 tokens with chances. Allows additional decisions in the economy system.






	&#60;img width="600" height="338" width_o="600" height_o="338" data-src="https://freight.cargo.site/t/original/i/749082547b921f556fc4df274fd7f92abd4d07b7874ffd0415623deb0de914d3/step-change.gif" data-mid="191428473" border="0" data-scale="100" src="https://freight.cargo.site/w/600/i/749082547b921f556fc4df274fd7f92abd4d07b7874ffd0415623deb0de914d3/step-change.gif" /&#62;

 Unused paint carry-over


	&#60;img width="600" height="338" width_o="600" height_o="338" data-src="https://freight.cargo.site/t/original/i/0e28023157228f9d95faa131687c000a9940bfd9955fa92115e965c3003a3744/belt.gif" data-mid="191428467" border="0"  src="https://freight.cargo.site/w/600/i/0e28023157228f9d95faa131687c000a9940bfd9955fa92115e965c3003a3744/belt.gif" /&#62;

 Pickup hidden tokens


	&#60;img width="600" height="338" width_o="600" height_o="338" data-src="https://freight.cargo.site/t/original/i/501946a9e1d2c64b1b6c7f8782a041d5362b56b13b99e8b09cd10b00183babbe/vending.gif" data-mid="191428474" border="0"  src="https://freight.cargo.site/w/600/i/501946a9e1d2c64b1b6c7f8782a041d5362b56b13b99e8b09cd10b00183babbe/vending.gif" /&#62;
Exchange machine



	
Ability design - augmenting playing styles

	

	
    


    
    


	

	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/0860914044a8c7415cfe3bc2a66b879d3c5db26848a6d7d3b3b94a36219bb812/hammer-short.gif" data-mid="193809362" border="0"  src="https://freight.cargo.site/w/720/i/0860914044a8c7415cfe3bc2a66b879d3c5db26848a6d7d3b3b94a36219bb812/hammer-short.gif" /&#62;
Hammer destroys existing blocks
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/a6dd7106ec74a34e821dddaca703e3691748639c792b0f93c5a9e1413b97d7d5/jump-short.gif" data-mid="193809361" border="0"  src="https://freight.cargo.site/w/720/i/a6dd7106ec74a34e821dddaca703e3691748639c792b0f93c5a9e1413b97d7d5/jump-short.gif" /&#62;
Jump boost launches player into the sky

	

Players will enter the Ability Shop after finishing the level to buy new abilities.The new abilities are designed such that players could uncover new ways of puzzle-solving. Now the players will obtain more strategies when dealing with the same level which will foster diverse gameplay styles.



	

Hammer



	

by altering existing terrain the levels will become non-linear, players can traverse between the levels and decide the order by themselves.



	

Jump Boost


	

Player can now jump much higher to get over obstacles easily, such that a combination of the jump boosts can bring exciting gameplay experiences.



	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/28d2a3a35256383075e0f4dcfd0e264aaa81af9b0bab347573dc03ea9b3727cf/launch2.gif" data-mid="193811456" border="0"  src="https://freight.cargo.site/w/720/i/28d2a3a35256383075e0f4dcfd0e264aaa81af9b0bab347573dc03ea9b3727cf/launch2.gif" /&#62;
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/74444791f310c00de679d6984115116c2cba90b1fa105b3e2a8fa7917f173b89/drop.gif" data-mid="193811466" border="0"  src="https://freight.cargo.site/w/720/i/74444791f310c00de679d6984115116c2cba90b1fa105b3e2a8fa7917f173b89/drop.gif" /&#62;

Different solutions/level trajectory to the same obstacle


	


Helper system: player tool - Note&#38;nbsp;

During initial playtesting, players showed eager intent to make moves constenetly without imagining the results of the moves and feel anxious once a desired step cannot be made after a few attempts. It was difficult for players to imagine the sequence of steps and remember the steps they made. To encourage the player to not making hasty moves and to imagine, thus learning, the rules and patterns of dice-rolling before making actions. Note-taking abilities benefits puzzle solving and manages the flow of the solution process. By saving in terms of pair of tiles and the steps made inbetween, the game pivots towards segamenting the puzzle solving process into pairs of tiles.

To make sure smooth interaction with the note, the following decisions are implemented:
continous passive background recording, saves the steps just made when player choose to saveautomatic sorting of records based the step counts.limit the number of records with same step count, player will need to replace the existing record to save new one.self-adjusting the thumbnail scale of record page by calculating the bounds of steps and convert into scale of the render texture.






	&#60;img width="600" height="338" width_o="600" height_o="338" data-src="https://freight.cargo.site/t/original/i/53bf8890c067ebe0d894e6105ade1a44cdb9fee5b2d01d0ac506313554fa9458/delete.gif" data-mid="191428470" border="0"  src="https://freight.cargo.site/w/600/i/53bf8890c067ebe0d894e6105ade1a44cdb9fee5b2d01d0ac506313554fa9458/delete.gif" /&#62;
Auto-sorting of records based on steps/deleting records
	&#60;img width="600" height="338" width_o="600" height_o="338" data-src="https://freight.cargo.site/t/original/i/7958f77120b3a4065d84f71ae8c1cec22a5bcd227e3e35294be545108180297a/zoom.gif" data-mid="191428476" border="0"  src="https://freight.cargo.site/w/600/i/7958f77120b3a4065d84f71ae8c1cec22a5bcd227e3e35294be545108180297a/zoom.gif" /&#62;


Self-adjusting thumbnail size based on steps count



	&#60;img width="600" height="338" width_o="600" height_o="338" data-src="https://freight.cargo.site/t/original/i/737a4abcc2e233e80ab852b76b2551991afccdda7142fba2e956ba8cd6ac2c74/record-replace.gif" data-mid="191428471" border="0"  src="https://freight.cargo.site/w/600/i/737a4abcc2e233e80ab852b76b2551991afccdda7142fba2e956ba8cd6ac2c74/record-replace.gif" /&#62;
Replacing existing records with same step count



	





	UX + Tutorial

The slight idiosyncrasy of the concept and the rules of note system demands a thorough tutorial and help from UI. The tutorials are done in forms of small cutscenes with character dialogue and demostrations, all tailored into the narrative&#38;nbsp;of “new employee onboarding”. 
In the first iteration, all tutorials happened within the first scene, connecting the opening cutscene. Play-testers reported the cutscene was too long for them to focus on the content. The first instance of player input came in too late in the dialogue, which made reading through the dialogue a chore. Then it became nature to segment the tutorial into smaller chucks with only one thing to teach in each chuck, and separate them with player inputs.

	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/41088c6e49ca09b50f4534deab1aeaa9c68ce5d00f384baec2862d3cd28b7e86/tut1.gif" data-mid="192883668" border="0"  src="https://freight.cargo.site/w/720/i/41088c6e49ca09b50f4534deab1aeaa9c68ce5d00f384baec2862d3cd28b7e86/tut1.gif" /&#62;
Allow player movement after short dialogue

	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/da9897267f29aa932d8916202480c4074153eca7a74d4bd4ab73af2097e4416e/tut2.gif" data-mid="192883744" border="0"  src="https://freight.cargo.site/w/720/i/da9897267f29aa932d8916202480c4074153eca7a74d4bd4ab73af2097e4416e/tut2.gif" /&#62;

Demostrate the flow of interaction with the system in tutorial

	I designed 
the dice face indication and the step system

 with intention for them to be intuitive and needless of a tutorial. The step system was not well understanded by the play-tester at first. The unused steps will be carried over to the next level while the new level will give the players some new steps. To resolve that issue, I appended another bottle to indicate the leftover steps and made an animation to indicate the unused step carry-over mechanics.

	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/404dbee693c1516df99e5f9e024be14d62783b3c01e137dd8ee8515ae9b8f870/tut3.gif" data-mid="192884231" border="0"  src="https://freight.cargo.site/w/720/i/404dbee693c1516df99e5f9e024be14d62783b3c01e137dd8ee8515ae9b8f870/tut3.gif" /&#62;
Step UI animation at the begining of each level change
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/f94582ce2d72d6f4820f88d15322492b47e1f98fa95353f37e6ebb0b53b731b7/tut4.gif" data-mid="192884354" border="0"  src="https://freight.cargo.site/w/720/i/f94582ce2d72d6f4820f88d15322492b47e1f98fa95353f37e6ebb0b53b731b7/tut4.gif" /&#62;
The leftovers are consumed after the main bucket to further differentiate the two indicators




	Learning
Agile adjusting based on playtesting feedback.Difficulty management based on testers’ gameplay videos.Tutorial making and flow control.Difficult to implement features are not necessarily better than simple and easier features.Communication frequency with artist should be determined early in the project stage.Incorporate testing early in the development.



	
Design Doc





&#60;img width="1833" height="879" width_o="1833" height_o="879" data-src="https://freight.cargo.site/t/original/i/01847687ba8b0907865cc02cb9868feaf7f54ff061a7d04f2baa50b21d90aa62/level-decision.JPG" data-mid="191524450" border="0"  src="https://freight.cargo.site/w/1000/i/01847687ba8b0907865cc02cb9868feaf7f54ff061a7d04f2baa50b21d90aa62/level-decision.JPG" /&#62;
&#60;img width="1103" height="490" width_o="1103" height_o="490" data-src="https://freight.cargo.site/t/original/i/34a93c53a669d89b199d38140034f3ab835cb8df3685e1f1b20a6bb9cf8568c5/level-learning.JPG" data-mid="192885674" border="0"  src="https://freight.cargo.site/w/1000/i/34a93c53a669d89b199d38140034f3ab835cb8df3685e1f1b20a6bb9cf8568c5/level-learning.JPG" /&#62;
&#60;img width="1255" height="1836" width_o="1255" height_o="1836" data-src="https://freight.cargo.site/t/original/i/4c5180687d0df5a6a0d443bea2e9517e71d61ac3d27c8bc5522d9bb6f85e0654/project-manage.JPG" data-mid="191525118" border="0"  src="https://freight.cargo.site/w/1000/i/4c5180687d0df5a6a0d443bea2e9517e71d61ac3d27c8bc5522d9bb6f85e0654/project-manage.JPG" /&#62;
&#60;img width="1115" height="1040" width_o="1115" height_o="1040" data-src="https://freight.cargo.site/t/original/i/1d419f631de5fa5eac754633ece351e90c80e85086d4e3fd11f9665b345fb49c/narrative.JPG" data-mid="191525193" border="0"  src="https://freight.cargo.site/w/1000/i/1d419f631de5fa5eac754633ece351e90c80e85086d4e3fd11f9665b345fb49c/narrative.JPG" /&#62;



	



TECH Decision + CHALLENGES



	Record System


The record system is supported by recordEntry composed of steps, to improve performance, each step is keyed so no two same step can be made.


&#60;img width="937" height="430" width_o="937" height_o="430" data-src="https://freight.cargo.site/t/original/i/0e19e535694c9b14f1ce3696acc90c9316d35b117f9b0e2b0ac9ccb64aaa5241/entryobject.JPG" data-mid="191528340" border="0" data-scale="89" src="https://freight.cargo.site/w/937/i/0e19e535694c9b14f1ce3696acc90c9316d35b117f9b0e2b0ac9ccb64aaa5241/entryobject.JPG" /&#62;
&#60;img width="1050" height="680" width_o="1050" height_o="680" data-src="https://freight.cargo.site/t/original/i/bf720c4129afa7cc645643c2b8378b70a3f4db8b4fbec26cd3773f99b07c26ae/record-system.JPG" data-mid="191528125" border="0" data-scale="100" src="https://freight.cargo.site/w/1000/i/bf720c4129afa7cc645643c2b8378b70a3f4db8b4fbec26cd3773f99b07c26ae/record-system.JPG" /&#62;



Level Change Cutscene Event Management

&#60;img width="1647" height="930" width_o="1647" height_o="930" data-src="https://freight.cargo.site/t/original/i/91ef3713f06e7f6e5b06bdca2745c6e8e450ebb0647c3ab97db16247f772517c/levelAnimation.JPG" data-mid="191529103" border="0" data-scale="89" src="https://freight.cargo.site/w/1000/i/91ef3713f06e7f6e5b06bdca2745c6e8e450ebb0647c3ab97db16247f772517c/levelAnimation.JPG" /&#62;





	


Level Design and Editing
The levels are arranged with increasing difficulty curve. Most levels have a specific trick about dice to teach the players and the players can apply the trick in the following levels. But to accomandate all kinds of play styles, all of the levels (except for the first two tutorial levels) have more than one solution. The player can use more steps to pass the level which will leave them with less awarded tokens.



	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/c35185528f3eb33e4acd85bb6d27ee92eea9db61959a3a2bd7cdcccbdd78f221/level1.gif" data-mid="192884520" border="0"  src="https://freight.cargo.site/w/720/i/c35185528f3eb33e4acd85bb6d27ee92eea9db61959a3a2bd7cdcccbdd78f221/level1.gif" /&#62;
Learning how to make adjacent stamps
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/ee21430af68645a7fc3c383120866d52692587694fcb8aa49ec4b34bae3139ed/level2.gif" data-mid="192884872" border="0"  src="https://freight.cargo.site/w/720/i/ee21430af68645a7fc3c383120866d52692587694fcb8aa49ec4b34bae3139ed/level2.gif" /&#62;
Applying the learnt knowledge



	

The components of a level were separated and implemented into tools for quick level editing.
 
begining position of playerbegining position of headlevel completion trigger (beyond this point player can no longer restart the level and the level is considered passed)level triggers (calls change level event)Each of the segments are controled through quick scripting in editor for fast adjustment and iteration.

	


Challenges

The initial design was updating the recorded steps in realtime in the thumbnail section. However this implementation counters its nature as a referencing source. Then to optimize performance, the spawning of icons are done at the time of record page accessing with pooling. The thumbnail is then achived by adding an additional camera looking at the selected record page.Cutscene handling includes updating states of game state objects and scene objects. The complexity of involving multiple events requires careful categorization and sorting of objects’ hierarchy.



	

Full Gameplay



</description>
		
	</item>
		
		
	<item>
		<title>Freyjas Seals</title>
				
		<link>https://xiaozhou.org/Freyjas-Seals</link>

		<pubDate>Tue, 07 Nov 2023 19:30:01 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Freyjas-Seals</guid>

		<description>
	
	

	
    
    
    


	
&#60;img width="3325" height="332" width_o="3325" height_o="332" data-src="https://freight.cargo.site/t/original/i/55f9d2df2d2f998b4322beb7fef84008fd491652b08777d3ed146f8bcdc4b9f4/title.png" data-mid="196179853" border="0" data-scale="52" src="https://freight.cargo.site/w/1000/i/55f9d2df2d2f998b4322beb7fef84008fd491652b08777d3ed146f8bcdc4b9f4/title.png" /&#62;
Puzzel Oriented Quest&#38;nbsp;- Break all Freyja’s seals, unfrost the world








	Role : Technical, Level &#38;amp; System Design, Character Rigging, solo project

Tech detail:&#38;nbsp; Unreal 5, C++, Blender

Timeframe :  3 weeks





	Overview
Freyja’s Seals is a standalone quest that focuses the progression on exploring and tackling ability-based puzzles. The design process is also a brainstorming challenge to see how many distinct interaction modules I can create in a short amount of time. 

 
	

Narrative 
The player awoke to see the forest in frost; upon breaking all seven seals, the world would be restored to normal. Finally, the player conquered all challenges and was brought up to the sky by the ancient tree and found the forest was in the shape of a butterfly, the symbol of Freyja.







	

Task Overview



	



Brainstormed dozens of puzzle scenarios revolved around character abilitiesImplemented various drag-and-drop action blocks that enabled easy and fast level-editingIterated through the puzzle mechanics, and designed the system behind the puzzle interactions
Incorporated the action blocks into combat, designed different encounter scenarios.Created an event-driven system to keep track of player progression
Assembled camera animation, environment, and location-specific event to produce key narrative moment.

	

Design Decisions


	The project is directed by one critical ability of ice-melting, and the level system is built around the mechanics enabled by the ability. Then, the quest is implemented to showcase a more complete experience of the puzzles. 

 Interactive Level Modules - I designed over a dozen scenarios, then iterated and produced 9 action blocks with customizable properties, which later put into blueprints and eased the level design. The modules dealt with destructibles, physics control, and buoyancy.

 Puzzle Design - The puzzles are designed as combinations of the action blocks and their variants. I conducted playtesting on the interactive modules and iterated to make sure the combinations were intuitive and interesting and covered as many of the different attributes of ice as possible. 
 
 Loots - loots are allowed for custom value and items. They lead players in the level as well as serve as puzzle hints. Implemented chest animation to react to player interaction.

 Quest Progression - The quest is composed of different puzzles, each containing a quest item to progress the mission. The level was designed to ensure clarity in player objectives even without compass directing. The background of the quest is delivered through location-based dialogue and events.



	&#60;img width="2074" height="1027" width_o="2074" height_o="1027" data-src="https://freight.cargo.site/t/original/i/e7028b3caac2f0a832f23a663daf9ad59dcfdd89a58fb1fb522a1b1ab10838d4/system.JPG" data-mid="196207215" border="0" data-scale="74" src="https://freight.cargo.site/w/1000/i/e7028b3caac2f0a832f23a663daf9ad59dcfdd89a58fb1fb522a1b1ab10838d4/system.JPG" /&#62;
Puzzle Mechanics Derivation

	
Action Blocks





	
        

Item retrival



    
	
            


Remove fixture


    
	
            


Remove Obstacle


    

	
            

Uncover hidden object


    
	
    
            


Balancing weights



	
            

Remove blockage


    

	
            

Changing landscape


    
	
            

Open passage


    
	
            

Activate mechanic




	Events

	
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/e878c609b93d81789f9d472c6fd61a6c00dfabd53939fcea3ce36a565aa74c79/enemy.gif" data-mid="197212766" border="0"  src="https://freight.cargo.site/w/854/i/e878c609b93d81789f9d472c6fd61a6c00dfabd53939fcea3ce36a565aa74c79/enemy.gif" /&#62;
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/ed3a14eb1e48ce3ac1c9430735289a8400915848525fab004b7abbec7b42e7d4/drop-floor.gif" data-mid="197212765" border="0"  src="https://freight.cargo.site/w/854/i/ed3a14eb1e48ce3ac1c9430735289a8400915848525fab004b7abbec7b42e7d4/drop-floor.gif" /&#62;
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/f254111c570b59ea7afa81ffbc7ed30d49da4ce088a01526fcb7e76dfc573946/drop-ball.gif" data-mid="197212769" border="0"  src="https://freight.cargo.site/w/854/i/f254111c570b59ea7afa81ffbc7ed30d49da4ce088a01526fcb7e76dfc573946/drop-ball.gif" /&#62;
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/d0ec795355ee368b4baac1e61877e34fa2ab52c819df77ecec51a35e224d2392/end.gif" data-mid="197212768" border="0"  src="https://freight.cargo.site/w/854/i/d0ec795355ee368b4baac1e61877e34fa2ab52c819df77ecec51a35e224d2392/end.gif" /&#62;
Location-specific events with level sequence, animation, and enemy behavior

	
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/03fec91d40ddb0e6b833b6269f96f05f325eed3da963bc4242ff8f3cc44b2032/quest-complete.gif" data-mid="197212767" border="0"  src="https://freight.cargo.site/w/854/i/03fec91d40ddb0e6b833b6269f96f05f325eed3da963bc4242ff8f3cc44b2032/quest-complete.gif" /&#62;
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/c4976a9e8760f2577d7af5d9f1434c120423f330b2db30cddfbe2ba6ed56c386/open-cam2.gif" data-mid="197607439" border="0"  src="https://freight.cargo.site/w/854/i/c4976a9e8760f2577d7af5d9f1434c120423f330b2db30cddfbe2ba6ed56c386/open-cam2.gif" /&#62;
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/d3127cf19144c70aad0037f27cf0e48973aed4351b7696a8771e0995f8f1a27c/cameratilt.gif" data-mid="197329474" border="0"  src="https://freight.cargo.site/w/854/i/d3127cf19144c70aad0037f27cf0e48973aed4351b7696a8771e0995f8f1a27c/cameratilt.gif" /&#62;
&#60;img width="854" height="480" width_o="854" height_o="480" data-src="https://freight.cargo.site/t/original/i/f3db1d7611b7f26f2f207934900fdad71d010ed19c55ab11996b3732ebd6dd3a/cam-zoom.gif" data-mid="197608191" border="0"  src="https://freight.cargo.site/w/854/i/f3db1d7611b7f26f2f207934900fdad71d010ed19c55ab11996b3732ebd6dd3a/cam-zoom.gif" /&#62;
Location and behavior based camera controls - to promote player immersion and enhance narrative delivering



	&#38;nbsp;

&#60;img width="3742" height="2138" width_o="3742" height_o="2138" data-src="https://freight.cargo.site/t/original/i/db235f370f8d22f11983bcd2e74e49eccff1725cb53322637f2a382d357b4676/map.png" data-mid="196951082" border="0"  src="https://freight.cargo.site/w/1000/i/db235f370f8d22f11983bcd2e74e49eccff1725cb53322637f2a382d357b4676/map.png" /&#62;
Quest Overview



	

Quest Playthough



</description>
		
	</item>
		
		
	<item>
		<title>Re: Hyper-Reality</title>
				
		<link>https://xiaozhou.org/Re-Hyper-Reality</link>

		<pubDate>Sat, 09 Nov 2024 17:08:45 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Re-Hyper-Reality</guid>

		<description>
	
	

	
    
    
    


	
&#60;img width="3131" height="338" width_o="3131" height_o="338" data-src="https://freight.cargo.site/t/original/i/fd016b113ee1142e4a95795ffbfa5d314f404ebba2bb935fc74e58961671f9b3/innertitle-blank.png" data-mid="221490773" border="0" data-scale="92" src="https://freight.cargo.site/w/1000/i/fd016b113ee1142e4a95795ffbfa5d314f404ebba2bb935fc74e58961671f9b3/innertitle-blank.png" /&#62;
Mix Reality Experience Design - Embodied home interface
Master Thesis submitted to Harvard Graduate School of Design





	Role : solo project

Tech detail:&#38;nbsp; Unity, C#, Maya

Timeframe :  3 months





	Overview
The project designs a model that explores the affective impacts of altering the experienced 

reality 

 of our homes in the form of embody interfaces and prototyped interaction scenarios that turned everyday space into playgrounds.

 





	



	&#38;nbsp;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/dba04880a976e24b795640c736487219c78ae5b18927ccc95056e6b0dfe46fa9/final-review-edits_Page_01.png" data-mid="221493218" border="0"  src="https://freight.cargo.site/w/1000/i/dba04880a976e24b795640c736487219c78ae5b18927ccc95056e6b0dfe46fa9/final-review-edits_Page_01.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/a428fb4768c588c88278cf0345180194a427353a6f97c3f227e5cd751457725e/final-review-edits_Page_02.png" data-mid="221493219" border="0"  src="https://freight.cargo.site/w/1000/i/a428fb4768c588c88278cf0345180194a427353a6f97c3f227e5cd751457725e/final-review-edits_Page_02.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/cba5874a28b1a655674502286cbec939efb2968403cce81b66c022fd338a6fcc/final-review-edits_Page_03.png" data-mid="221493220" border="0"  src="https://freight.cargo.site/w/1000/i/cba5874a28b1a655674502286cbec939efb2968403cce81b66c022fd338a6fcc/final-review-edits_Page_03.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/fbf4e45755ff00b225941037210e0a2e866270434c7970b3e34302f7211922eb/final-review-edits_Page_04.png" data-mid="221493221" border="0"  src="https://freight.cargo.site/w/1000/i/fbf4e45755ff00b225941037210e0a2e866270434c7970b3e34302f7211922eb/final-review-edits_Page_04.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/4bd94545e1141d5acc63b0dd295cddf6e22e1228d5842463f735bc3444189010/final-review-edits_Page_05.png" data-mid="221493222" border="0"  src="https://freight.cargo.site/w/1000/i/4bd94545e1141d5acc63b0dd295cddf6e22e1228d5842463f735bc3444189010/final-review-edits_Page_05.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/806a5ce6fe87f13cbc61139ded6cbf945b8fb9d60574a52492dab432fa0ad606/final-review-edits_Page_06.png" data-mid="221493223" border="0"  src="https://freight.cargo.site/w/1000/i/806a5ce6fe87f13cbc61139ded6cbf945b8fb9d60574a52492dab432fa0ad606/final-review-edits_Page_06.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/5e2ba5b68b4b5063466e4d6c42d9c6bbd14e128de3170a6ad7eb2ffb50d0af8a/final-review-edits_Page_07.png" data-mid="221493224" border="0"  src="https://freight.cargo.site/w/1000/i/5e2ba5b68b4b5063466e4d6c42d9c6bbd14e128de3170a6ad7eb2ffb50d0af8a/final-review-edits_Page_07.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/0ba8bf75eb9f263338e69238668449f1454a62a1c8d5fc377cc13d26f7d6dbcb/final-review-edits_Page_08.png" data-mid="221493225" border="0"  src="https://freight.cargo.site/w/1000/i/0ba8bf75eb9f263338e69238668449f1454a62a1c8d5fc377cc13d26f7d6dbcb/final-review-edits_Page_08.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/e468aa931f0be355fbdbc412457d083c6fba6e1240cb46dd4d76a712a75327d0/final-review-edits_Page_09.png" data-mid="221493226" border="0"  src="https://freight.cargo.site/w/1000/i/e468aa931f0be355fbdbc412457d083c6fba6e1240cb46dd4d76a712a75327d0/final-review-edits_Page_09.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/546e084f82bd5ec6be33b1285daee1373b4d627e3d8d9a002d3530fab29c99d2/final-review-edits_Page_10.png" data-mid="221493227" border="0"  src="https://freight.cargo.site/w/1000/i/546e084f82bd5ec6be33b1285daee1373b4d627e3d8d9a002d3530fab29c99d2/final-review-edits_Page_10.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/4b2882ba03a32ca2dbf63e0b6b10b356c2c27a6cc7d1dac2662022409bd69937/final-review-edits_Page_11.png" data-mid="221493228" border="0"  src="https://freight.cargo.site/w/1000/i/4b2882ba03a32ca2dbf63e0b6b10b356c2c27a6cc7d1dac2662022409bd69937/final-review-edits_Page_11.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/14ffedbecc14f4e6a8e67aedc5d3aad3fbb62db9386eb9b4901049b1ea403281/final-review-edits_Page_12.png" data-mid="221493229" border="0"  src="https://freight.cargo.site/w/1000/i/14ffedbecc14f4e6a8e67aedc5d3aad3fbb62db9386eb9b4901049b1ea403281/final-review-edits_Page_12.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/691aa52e0de7d3314e89735e109956c3c10595d2be71468ee4e570b52f7e9fef/final-review-edits_Page_13.png" data-mid="221493230" border="0"  src="https://freight.cargo.site/w/1000/i/691aa52e0de7d3314e89735e109956c3c10595d2be71468ee4e570b52f7e9fef/final-review-edits_Page_13.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/26b20749a988791e0efbe90e7e7c07845452ec787c22a2aa7b607c7d69fa4f8e/final-review-edits_Page_14.png" data-mid="221493231" border="0"  src="https://freight.cargo.site/w/1000/i/26b20749a988791e0efbe90e7e7c07845452ec787c22a2aa7b607c7d69fa4f8e/final-review-edits_Page_14.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/0089af87a5f0fc2bef6be18dccee41f4c9ea83a82c5463f24cdd7f61e38241c7/final-review-edits_Page_15.png" data-mid="221493232" border="0"  src="https://freight.cargo.site/w/1000/i/0089af87a5f0fc2bef6be18dccee41f4c9ea83a82c5463f24cdd7f61e38241c7/final-review-edits_Page_15.png" /&#62;&#60;img width="4000" height="2250" width_o="4000" height_o="2250" data-src="https://freight.cargo.site/t/original/i/74c93f8bf315ef3c80c1263957160dec2fc6f615b7130ceb61a4e61d8f1bf6d2/final-review-edits_Page_16.png" data-mid="221493233" border="0"  src="https://freight.cargo.site/w/1000/i/74c93f8bf315ef3c80c1263957160dec2fc6f615b7130ceb61a4e61d8f1bf6d2/final-review-edits_Page_16.png" /&#62;
</description>
		
	</item>
		
		
	<item>
		<title>Hidden Room</title>
				
		<link>https://xiaozhou.org/Hidden-Room</link>

		<pubDate>Wed, 20 Sep 2023 17:27:12 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Hidden-Room</guid>

		<description>
    


	
	
Hidden Room
Advanture - Puzzling levels







	Role : Level Design

Tech Detail:&#38;nbsp; Unreal Engine, C++, Blueprint, Blender

Timeframe :  1 Months, December 2022


	Overview



If stuck in a looping room, would you listen to the game’s instructions?A self-contained level using an optical illusion to generate a looping room effect.






Main Concept
	
The level creates a set of inter-connected hallways which are slightly varied in elevation such that players would be walking up/downstairs without acknowleding the fact.




	&#60;img width="1920" height="1056" width_o="1920" height_o="1056" data-src="https://freight.cargo.site/t/original/i/1dfc7ae7961ad123b370a2bbb6a3de89bac39289fded8692db502f4ed5e459af/Sequence-02_1.jpg" data-mid="191590662" border="0"  src="https://freight.cargo.site/w/1000/i/1dfc7ae7961ad123b370a2bbb6a3de89bac39289fded8692db502f4ed5e459af/Sequence-02_1.jpg" /&#62;
	&#60;img width="1920" height="1056" width_o="1920" height_o="1056" data-src="https://freight.cargo.site/t/original/i/7066c3fec08350c2bbd6f76960c4f9a336b58e26e61f45b9c7ca9941a2faa8a2/Sequence-02.jpg" data-mid="191590661" border="0"  src="https://freight.cargo.site/w/1000/i/7066c3fec08350c2bbd6f76960c4f9a336b58e26e61f45b9c7ca9941a2faa8a2/Sequence-02.jpg" /&#62;
To create the illusion that the floors are flat, an optical trick is used.


	&#60;img width="2794" height="1379" width_o="2794" height_o="1379" data-src="https://freight.cargo.site/t/original/i/35954f1ad7af8dbc655618b7f3cdb7ed29e9a2f1e47df9edce4bb0220319fd1a/illustration.png" data-mid="191590659" border="0" data-scale="49" src="https://freight.cargo.site/w/1000/i/35954f1ad7af8dbc655618b7f3cdb7ed29e9a2f1e47df9edce4bb0220319fd1a/illustration.png" /&#62;


	Floor slightly elevated at end
	Floor slightly declined at end


	&#60;img width="2742" height="1444" width_o="2742" height_o="1444" data-src="https://freight.cargo.site/t/original/i/eb07604cf12d0e849f6669ac28c4dc25341600f9c873ad328b3170279bec768c/illustration2.png" data-mid="191590660" border="0" data-scale="45" src="https://freight.cargo.site/w/1000/i/eb07604cf12d0e849f6669ac28c4dc25341600f9c873ad328b3170279bec768c/illustration2.png" /&#62;

	For floors going upstairs, the walls are push each other further apart, such that the end of corridor would appear closer than it really is to counter the optical effect of a inclining hallway.
	For floor going downstairs, the walls are closer together at the end to make the end appear further than it really is.





Interaction Mechanics&#38;nbsp;


	
&#60;img width="2016" height="2474" width_o="2016" height_o="2474" data-src="https://freight.cargo.site/t/original/i/6ef0f8624b553cccd063cfb1fa1d7bb9732a07d41a869ba70c7b95c592e93e76/map.png" data-mid="191593046" border="0" data-scale="73" src="https://freight.cargo.site/w/1000/i/6ef0f8624b553cccd063cfb1fa1d7bb9732a07d41a869ba70c7b95c592e93e76/map.png" /&#62;
 


 &#38;nbsp;
	
&#60;img width="1920" height="1080" width_o="1920" height_o="1080" data-src="https://freight.cargo.site/t/original/i/6115e8e48946d581dab9c25fc562e4d9bd35e81d0ad956b5c9de5c8009d839b7/lamp.png" data-mid="191592403" border="0" data-scale="81" src="https://freight.cargo.site/w/1000/i/6115e8e48946d581dab9c25fc562e4d9bd35e81d0ad956b5c9de5c8009d839b7/lamp.png" /&#62;&#60;img width="1920" height="1080" width_o="1920" height_o="1080" data-src="https://freight.cargo.site/t/original/i/9bffe528b70dd9dd719e3a0c350d5d38c8f3ec9f4e3f7892d3c79c09b6259635/lampon.png" data-mid="191592404" border="0" data-scale="79" src="https://freight.cargo.site/w/1000/i/9bffe528b70dd9dd719e3a0c350d5d38c8f3ec9f4e3f7892d3c79c09b6259635/lampon.png" /&#62;
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/39cb30459d36c4b7c1c84bbe2e19b5fab464a1109cda502237e9d61e291131be/Sequence-02.gif" data-mid="191599177" border="0"  src="https://freight.cargo.site/w/720/i/39cb30459d36c4b7c1c84bbe2e19b5fab464a1109cda502237e9d61e291131be/Sequence-02.gif" /&#62;


Lamp as an indication of player position and directionality.When player touches lamp, it will be on for 30 seconds, with an indication of ticking sounds.Temporary activation -&#38;gt; Temporary knowledge of locationLamps are placed on the corners of the rooms for the player to reference the floor they currently occupies and can inform the players whether they are circulating on the same floor

Map&#38;nbsp;






	

&#60;img width="1299" height="650" width_o="1299" height_o="650" data-src="https://freight.cargo.site/t/original/i/cba6b2ee62264666615c539991de4f9706f361ee3c5906bfdf56c587743a12da/ending.png" data-mid="191593093" border="0" data-scale="82" src="https://freight.cargo.site/w/1000/i/cba6b2ee62264666615c539991de4f9706f361ee3c5906bfdf56c587743a12da/ending.png" /&#62;
Front 
&#60;img width="1299" height="650" width_o="1299" height_o="650" data-src="https://freight.cargo.site/t/original/i/cba6b2ee62264666615c539991de4f9706f361ee3c5906bfdf56c587743a12da/ending.png" data-mid="191593093" border="0" data-scale="84" src="https://freight.cargo.site/w/1000/i/cba6b2ee62264666615c539991de4f9706f361ee3c5906bfdf56c587743a12da/ending.png" /&#62;

Back 




	&#60;img width="1771" height="756" width_o="1771" height_o="756" data-src="https://freight.cargo.site/t/original/i/23c843026a533e4ee9301cda847cb5464c64734006ebf98bfd90ee9c068b2914/normal-scheme.png" data-mid="191593434" border="0" data-scale="88" src="https://freight.cargo.site/w/1000/i/23c843026a533e4ee9301cda847cb5464c64734006ebf98bfd90ee9c068b2914/normal-scheme.png" /&#62;


Normal Floor Scheme



&#60;img width="1112" height="443" width_o="1112" height_o="443" data-src="https://freight.cargo.site/t/original/i/341dd3232d404126ed951129ee5a8558a74615fcd8100b151d445cbc3e00cf51/midlevel-scheme.png" data-mid="191593433" border="0" data-scale="90" src="https://freight.cargo.site/w/1000/i/341dd3232d404126ed951129ee5a8558a74615fcd8100b151d445cbc3e00cf51/midlevel-scheme.png" /&#62;


Reversed Floor Scheme












	

The level intend to use player’s known knowledge build up in the game as a puzzle.

Top three floors are all following the same order: the outer two routes(1 and 4) are connected and forms a loop while the middle two routes(2 and 3) will take players to the upper(left route)/lower(right route).The situation changes on the fourth floor where the previous relation is inversed. Now using the middle two routes (2 and 3) will only take player in circle on the same floor.










Objectives



The level ends with the player finding an exit to the 3D maze. The player will discover two exits that have similar routes to get to. The exists will lead to two endings.
Ending 1: the player will drop from the roof to the ground when walked out the exit and restart the game.&#38;nbsp;Ending 2: the player will find themselves on the roof and get an overview of the map then successfully escape from the maze.
In both endings player will step on an elevator after entering the ending routes:

	&#60;img width="842" height="841" width_o="842" height_o="841" data-src="https://freight.cargo.site/t/original/i/ffb7d900597c7d16ba4abbd489122920056937261a71eb540e3ba060c9b1b30d/HighresScreenshot00006.png" data-mid="191594144" border="0" data-scale="58" src="https://freight.cargo.site/w/842/i/ffb7d900597c7d16ba4abbd489122920056937261a71eb540e3ba060c9b1b30d/HighresScreenshot00006.png" /&#62;
Ending1
	&#60;img width="841" height="842" width_o="841" height_o="842" data-src="https://freight.cargo.site/t/original/i/3adc34aae01d57518480584336e3994d58da20317c06345e11acf212026837d0/HighresScreenshot00010.png" data-mid="191594149" border="0" data-scale="58" src="https://freight.cargo.site/w/841/i/3adc34aae01d57518480584336e3994d58da20317c06345e11acf212026837d0/HighresScreenshot00010.png" /&#62;
Ending 2
</description>
		
	</item>
		
		
	<item>
		<title>DriverJ</title>
				
		<link>https://xiaozhou.org/DriverJ</link>

		<pubDate>Wed, 20 Sep 2023 17:27:13 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/DriverJ</guid>

		<description>
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 



	
    


    


	&#60;img width="577" height="70" width_o="577" height_o="70" data-src="https://freight.cargo.site/t/original/i/a20834129b8df5f43bf39eca0eb7a24850687690ce298ffd81e17906beff648c/banner-transparent.png" data-mid="192490675" border="0" data-scale="50" src="https://freight.cargo.site/w/577/i/a20834129b8df5f43bf39eca0eb7a24850687690ce298ffd81e17906beff648c/banner-transparent.png" /&#62;
Simulation - A XR Music Mixer Journey




	Role : Solo Project, Game Design, Program, Environment/UX Design, Asset Modeling
Tech Detail : Unity, C#, Blender
Timeframe : 3 Months, Janurary - April 2023
	Overview
Dive into an odyssey of - spaceship DJ! 
Yes, that’s a real thing. It’s where your controls of the spaceship also changes a mysterious music in the background.



	

Task Overview

	Designed and implemented VR spaceship driving controls.Created and tuned UI and VFX to fit within the overall aesthetic and made sure players are comfortable within the VR environment.
Implemented non-realtime audio spectrum analyzer using multi-threading solution.
Asset modeling + texture creation and management for reusability.




System + Interaction Design


Abstracting A DJ-table

The core gameplay of DriverJ is based on the interpretation and abstraction of real DJ-tables and DJ process.
To maximize the experience of DJ-ing while keeping the controls at an intuitive level, the DJ process is extracted into several key actions:
	

Play next song

Change both track speed separartely
Echo control
Duck volume (muffle audio) control
Volume control


	


	Warp jump

Thrust/Up Thrust speed
Ship roll degree
Ship pitch degree
Ship Yaw degree


	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/eb99911ce7e2c13f9bb0ee6fa5da3503aa96981af2a60ac5a614bb78d366bfa0/pressButton.gif" data-mid="192422667" border="0"  src="https://freight.cargo.site/w/720/i/eb99911ce7e2c13f9bb0ee6fa5da3503aa96981af2a60ac5a614bb78d366bfa0/pressButton.gif" /&#62;
Warp Jump
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/dffa95ef84624d1bd17e8f86fe256a225b7940c1aee4e94e2a1d62a167e06596/roll.gif" data-mid="192423064" border="0"  src="https://freight.cargo.site/w/720/i/dffa95ef84624d1bd17e8f86fe256a225b7940c1aee4e94e2a1d62a167e06596/roll.gif" /&#62;
Echo/Roll cntrol



	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/7ff5a1e5f7cdc39121e646a5941818ccb08528eb6656a1056a480be82545eeae/thrust.gif" data-mid="192423189" border="0"  src="https://freight.cargo.site/w/720/i/7ff5a1e5f7cdc39121e646a5941818ccb08528eb6656a1056a480be82545eeae/thrust.gif" /&#62;
Second Track Playback speed/Thrust
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/0bbd5096448616a6a5775c804fdca5bb26482c5a5fd0f2ee001ab0de8834af8d/spectrum.gif" data-mid="192423988" border="0"  src="https://freight.cargo.site/w/720/i/0bbd5096448616a6a5775c804fdca5bb26482c5a5fd0f2ee001ab0de8834af8d/spectrum.gif" /&#62;
Separate playback speed control reflected in sound spectrum display





TECHNICAL DETAIL



	Spectrum design


A key element of any DJ table is the spectrum display of the tracks (usually two), such that the DJ can easily tone the tracks and perform tricks like sync, unsync, blend, etc.

The spectrum displays shows the intensity and speed of a given sound, when it reaches the middle bar it will be played. Thus musics with same spectrum distribution are said to have the same beats.

	&#60;img width="1500" height="970" width_o="1500" height_o="970" data-src="https://freight.cargo.site/t/original/i/f60224bbcc9d1b4a14afa0b953b96863b4d71ffc0468b64af79df9011e6118aa/81ZboPlE2mL._AC_SL1500_.png" data-mid="192424631" border="0" data-scale="71" src="https://freight.cargo.site/w/1000/i/f60224bbcc9d1b4a14afa0b953b96863b4d71ffc0468b64af79df9011e6118aa/81ZboPlE2mL._AC_SL1500_.png" /&#62;
	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/dc4438a802e8757a91a11e072e1fd3a247235be7930ed5b8cf5a525bd67e5930/2023-09-30-22-44-50_1.gif" data-mid="192424651" border="0"  src="https://freight.cargo.site/w/720/i/dc4438a802e8757a91a11e072e1fd3a247235be7930ed5b8cf5a525bd67e5930/2023-09-30-22-44-50_1.gif" /&#62;


	challenges
To make sure the spectrum system mimics the real DJ table’s behavior, the spectrums must be analyzed before it is played, so player can see the coming beats at the next few moments and adjust accordingly.

Since the spectrum pre-analyze feature was not available in Unity’s sound processor (Unity only performs real-time analysis), it must be implemented. But because the songs are preloaded automatically 

when the previous song finished,&#38;nbsp;and Unity does not starts the player on the main thread, it required multi-threading solution to make sure the spectrum is pre-analyzed.



	&#60;img width="720" height="480" width_o="720" height_o="480" data-src="https://freight.cargo.site/t/original/i/cd7dd9b1ae6ae1f186227e8ca7defb9e73cea05780c6ef4b409ee2c7a9054e42/2023-10-01-16-00-13.gif" data-mid="192425236" border="0"  src="https://freight.cargo.site/w/720/i/cd7dd9b1ae6ae1f186227e8ca7defb9e73cea05780c6ef4b409ee2c7a9054e42/2023-10-01-16-00-13.gif" /&#62;
The spectrum of the next song is pre-loaded into it’s slot, waiting for player activation



	
        



Sound On Demo

    
    
</description>
		
	</item>
		
		
	<item>
		<title>Other Overview</title>
				
		<link>https://xiaozhou.org/Other-Overview</link>

		<pubDate>Wed, 20 Sep 2023 23:01:40 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Other-Overview</guid>

		<description>
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 


	
 
    
&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/4656c46c98d35d1f86d7b6fb39ebf3827c4cca75c5c141bda1240a341a0da7b0/Mist.0007.jpg" data-mid="192496470" border="0" data-scale="84" src="https://freight.cargo.site/w/1000/i/4656c46c98d35d1f86d7b6fb39ebf3827c4cca75c5c141bda1240a341a0da7b0/Mist.0007.jpg" /&#62;
&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/9d625d5fc6ec21871766eea958cdc5776a6e86091f53129dfc928f03e56d58b9/Mist.0006.jpg" data-mid="192496467" border="0"  src="https://freight.cargo.site/w/1000/i/9d625d5fc6ec21871766eea958cdc5776a6e86091f53129dfc928f03e56d58b9/Mist.0006.jpg" /&#62;
&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/bc50a727a82d7930f254c2b437f706d6b90b4aaf8aba5783825b7f2c9705d623/Camera.0003.jpg" data-mid="192496480" border="0"  src="https://freight.cargo.site/w/1000/i/bc50a727a82d7930f254c2b437f706d6b90b4aaf8aba5783825b7f2c9705d623/Camera.0003.jpg" /&#62;
&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/e98fc807ee47836c44d8fc6f09e3c6247a5f462de0989277d1a2a43f1095772f/2.0002-light.jpg" data-mid="192496477" border="0"  src="https://freight.cargo.site/w/1000/i/e98fc807ee47836c44d8fc6f09e3c6247a5f462de0989277d1a2a43f1095772f/2.0002-light.jpg" /&#62;
&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/271d55d881894fdfeffb80f367e3fcb34f2bcf3d62cf81288d6d79d4c5ab288c/WeChat-Image_20221204190422.jpg" data-mid="192496476" border="0"  src="https://freight.cargo.site/w/1000/i/271d55d881894fdfeffb80f367e3fcb34f2bcf3d62cf81288d6d79d4c5ab288c/WeChat-Image_20221204190422.jpg" /&#62;
&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/b0e8a3f1539f429c51c1c0dd600e15356811a7b5a99f304152eb453f9e8c1ad0/Camera.0499.jpg" data-mid="192496473" border="0" data-scale="88" src="https://freight.cargo.site/w/1000/i/b0e8a3f1539f429c51c1c0dd600e15356811a7b5a99f304152eb453f9e8c1ad0/Camera.0499.jpg" /&#62;
Playground
Mystic hideaway
Environment Design
#Unreal Engine5, Blueprint
	


Telepinwheel
Playable ProductPrototyping, Product/Interaction Design, Program
#Arduino, C


	&#60;img width="3270" height="2550" width_o="3270" height_o="2550" data-src="https://freight.cargo.site/t/original/i/ab322dd5725b634ec35c547162f466d9ed4c42a3861787877869b8eaf14a14c5/Working-Draft5.jpg" data-mid="192653677" border="0"  src="https://freight.cargo.site/w/1000/i/ab322dd5725b634ec35c547162f466d9ed4c42a3861787877869b8eaf14a14c5/Working-Draft5.jpg" /&#62;
Stanley Parable - A spatial analysis
Game Analysis

	&#60;img width="1440" height="1080" width_o="1440" height_o="1080" data-src="https://freight.cargo.site/t/original/i/4653e00fa1125148a411655d87824542496181eb43486a0c21e41d720212a86b/hand.png" data-mid="192860222" border="0"  src="https://freight.cargo.site/w/1000/i/4653e00fa1125148a411655d87824542496181eb43486a0c21e41d720212a86b/hand.png" /&#62;
P.A.G.E
XR Glove Design
Prototyping, Product Design, Program
#Unity, Arduino, C, C#
</description>
		
	</item>
		
		
	<item>
		<title>PAGE</title>
				
		<link>https://xiaozhou.org/PAGE</link>

		<pubDate>Mon, 02 Oct 2023 23:07:52 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/PAGE</guid>

		<description>
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 



	
    
    
	

	&#60;img width="2964" height="3599" width_o="2964" height_o="3599" data-src="https://freight.cargo.site/t/original/i/915ef9c7c83493cc4fda3365115adab1c46b12b5ce759a32dc624a3b4456fbb8/Picture1.png" data-mid="192850860" border="0" data-scale="100" src="https://freight.cargo.site/w/1000/i/915ef9c7c83493cc4fda3365115adab1c46b12b5ce759a32dc624a3b4456fbb8/Picture1.png" /&#62;


	

P.A.G.E
Pneumatically Actuated Glove for Extended-Reality



Role : Prototyping, Program, Product Design
Tech Detail : Unity, C#, Arduino, C, Blender
Group Size : 6
Timeframe : 2 Months, Sept-Nov&#38;nbsp; 2022




OverviewP.A.G.E is a pneumatically actuated wearable that simulates tapping in extended-reality in the form of a socially acceptable glove.






Design Principle

	&#60;img width="8180" height="3184" width_o="8180" height_o="3184" data-src="https://freight.cargo.site/t/original/i/5e2479fc11a371cf52eddffeeb574223274d3c5e03b350610b50e38ea26a3cbb/Picture3.png" data-mid="192851281" border="0"  src="https://freight.cargo.site/w/1000/i/5e2479fc11a371cf52eddffeeb574223274d3c5e03b350610b50e38ea26a3cbb/Picture3.png" /&#62;






	



	&#60;img width="7114" height="1699" width_o="7114" height_o="1699" data-src="https://freight.cargo.site/t/original/i/67c2537b6ae85bacbab4772dc90d676797a67c9086480900d7e5e69a6ea96176/principle-white.png" data-mid="192854636" border="0" data-scale="72" src="https://freight.cargo.site/w/1000/i/67c2537b6ae85bacbab4772dc90d676797a67c9086480900d7e5e69a6ea96176/principle-white.png" /&#62;






Prototype system design


	&#60;img width="2670" height="1832" width_o="2670" height_o="1832" data-src="https://freight.cargo.site/t/original/i/7cfe3b1d8ea4370757663aafb098bc6e1473f1e8b63ed0b66c11153ee43ffb15/system-black.png" data-mid="192856868" border="0" data-scale="100" src="https://freight.cargo.site/w/1000/i/7cfe3b1d8ea4370757663aafb098bc6e1473f1e8b63ed0b66c11153ee43ffb15/system-black.png" /&#62;




	User Interaction

	
&#60;img width="3300" height="2269" width_o="3300" height_o="2269" data-src="https://freight.cargo.site/t/original/i/bc9e7cea1ae0678d50a9116ee4339f8619925a1442d6397e9a6a8f02eb731f51/darker.png" data-mid="192853027" border="0" data-scale="100" src="https://freight.cargo.site/w/1000/i/bc9e7cea1ae0678d50a9116ee4339f8619925a1442d6397e9a6a8f02eb731f51/darker.png" /&#62;


	
    


    
	
    
        


    


	
        



Prototype iteration&#60;img width="3300" height="2550" width_o="3300" height_o="2550" data-src="https://freight.cargo.site/t/original/i/88d646a0d966492324c2e55c060316440b9d27a688d58fa1f37fa10fa0a3b314/dark16.png" data-mid="192854274" border="0" data-scale="100" src="https://freight.cargo.site/w/1000/i/88d646a0d966492324c2e55c060316440b9d27a688d58fa1f37fa10fa0a3b314/dark16.png" /&#62;

    
    


Tech detail


	&#60;img width="2866" height="1642" width_o="2866" height_o="1642" data-src="https://freight.cargo.site/t/original/i/d61d0cf5f4785c3f0609a02c2e027777505e79122b30d252c6b7b1eee1c26437/pipeline.png" data-mid="192856499" border="0" data-scale="100" src="https://freight.cargo.site/w/1000/i/d61d0cf5f4785c3f0609a02c2e027777505e79122b30d252c6b7b1eee1c26437/pipeline.png" /&#62;



	Learnings

	Designing the system for prototyping should be done early to opt for quick iterations. In this situation the design of the first prototype was not flexible enough at the begining because there was no considerations on their physical relations. But it became much easier after designing the components assembly in a modular fashion. And that leads to the design for the final form factor.

It’s important to design from usecases, but the project will lead to new possibilities when being open-minded and not clinging on to and thus struggling with the initial visions.
</description>
		
	</item>
		
		
	<item>
		<title>Playground</title>
				
		<link>https://xiaozhou.org/Playground</link>

		<pubDate>Wed, 20 Sep 2023 17:27:12 +0000</pubDate>

		<dc:creator>xiaozhou</dc:creator>

		<guid isPermaLink="true">https://xiaozhou.org/Playground</guid>

		<description>&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/bc50a727a82d7930f254c2b437f706d6b90b4aaf8aba5783825b7f2c9705d623/Camera.0003.jpg" data-mid="191654687" border="0"  src="https://freight.cargo.site/w/1000/i/bc50a727a82d7930f254c2b437f706d6b90b4aaf8aba5783825b7f2c9705d623/Camera.0003.jpg" /&#62;

	

Playground 
Role : Environment Design
Tech Detaill : Unreal Engine 5, Blender



	

OverviewThe playground is a mystic and calm place. It is walled by trees and bushes. Bumpy ground turns into small ponds when it rains. Cluster of small hills messes with the sense of directions of whoever wondered inside.







	
var vids = $("video"); 
$.each(vids, function(){
       this.controls = false; 
       this.muted = true;
}); 





	&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/e98fc807ee47836c44d8fc6f09e3c6247a5f462de0989277d1a2a43f1095772f/2.0002-light.jpg" data-mid="191654686" border="0" data-scale="85" src="https://freight.cargo.site/w/1000/i/e98fc807ee47836c44d8fc6f09e3c6247a5f462de0989277d1a2a43f1095772f/2.0002-light.jpg" /&#62;


	
	
	
	
	

	&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/4656c46c98d35d1f86d7b6fb39ebf3827c4cca75c5c141bda1240a341a0da7b0/Mist.0007.jpg" data-mid="191654692" border="0"  src="https://freight.cargo.site/w/1000/i/4656c46c98d35d1f86d7b6fb39ebf3827c4cca75c5c141bda1240a341a0da7b0/Mist.0007.jpg" /&#62;

	&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/b0e8a3f1539f429c51c1c0dd600e15356811a7b5a99f304152eb453f9e8c1ad0/Camera.0499.jpg" data-mid="191654688" border="0"  src="https://freight.cargo.site/w/1000/i/b0e8a3f1539f429c51c1c0dd600e15356811a7b5a99f304152eb453f9e8c1ad0/Camera.0499.jpg" /&#62;
	&#60;img width="3240" height="2160" width_o="3240" height_o="2160" data-src="https://freight.cargo.site/t/original/i/bc50a727a82d7930f254c2b437f706d6b90b4aaf8aba5783825b7f2c9705d623/Camera.0003.jpg" data-mid="191654687" border="0"  src="https://freight.cargo.site/w/1000/i/bc50a727a82d7930f254c2b437f706d6b90b4aaf8aba5783825b7f2c9705d623/Camera.0003.jpg" /&#62;


	&#60;img width="1674" height="1152" width_o="1674" height_o="1152" data-src="https://freight.cargo.site/t/original/i/1c77702233e24baee4324c2791ee4e599b2e0c3232b3be76213cdaabc6b56ab7/HighresScreenshot00013.png" data-mid="191659389" border="0"  src="https://freight.cargo.site/w/1000/i/1c77702233e24baee4324c2791ee4e599b2e0c3232b3be76213cdaabc6b56ab7/HighresScreenshot00013.png" /&#62;
</description>
		
	</item>
		
	</channel>
</rss>