<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>HCI on WANG Zhaofeng · Course Portfolio</title><link>https://zzefone.github.io/myblog/tags/hci/</link><description>Recent content in HCI on WANG Zhaofeng · Course Portfolio</description><generator>Hugo</generator><language>en</language><lastBuildDate>Wed, 21 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://zzefone.github.io/myblog/tags/hci/index.xml" rel="self" type="application/rss+xml"/><item><title>HCI Lab: Streaming Chat in Unity with the DeepSeek API</title><link>https://zzefone.github.io/myblog/posts/hci-lab-llm-unity-deepseek/</link><pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-lab-llm-unity-deepseek/</guid><description>&lt;p&gt;The lab asks us to build a chat character in Unity, then study how people experience the interaction. I replaced the local LLMUnity model with the DeepSeek API to avoid downloading and running a model on this PC. The chat still streams its answer and locks the input until the reply finishes.&lt;/p&gt;&#10;&lt;p&gt;This changes the lab&amp;rsquo;s offline setup: internet access and API credit are required, and the measured delay includes the network and provider. It is an API-based adaptation. The course deck specifies Unity 6 with URP; this UI-only project uses Unity 6000.0.23f1, the Built-in Render Pipeline and TextMeshPro. Acceptance of these changes is for the instructor to confirm.&lt;/p&gt;</description></item><item><title>HCI Lab 2: Touch Controls and an Android Build</title><link>https://zzefone.github.io/myblog/posts/hci-lab-2-mobile/</link><pubDate>Fri, 16 Oct 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-lab-2-mobile/</guid><description>&lt;p&gt;The &lt;a href="https://zzefone.github.io/myblog/posts/hci-lab-1-ml-agents/" &gt;desktop learning task&lt;/a&gt; has two roles: the cyan sphere follows its neural policy, while the gold target can move. For the mobile version, a touch pad replaces keyboard control of the target. It does not directly steer the sphere.&lt;/p&gt;&#10;&lt;img src="https://zzefone.github.io/myblog/images/hci/lab-2-mobile/windows-editor-preview.png" alt="Signal Chase&amp;#39;s touch layout running in the Windows Unity Editor, with a left target pad and right Mode, Pause and Reset buttons. The image is labelled as a Windows preview, not an Android run."&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Windows Editor preview of the touch layout. This is not an Android screenshot.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>HCI Lab 1: Machine Learning in Unity with ML-Agents</title><link>https://zzefone.github.io/myblog/posts/hci-lab-1-ml-agents/</link><pubDate>Mon, 12 Oct 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-lab-1-ml-agents/</guid><description>&lt;p&gt;Signal Chase starts with a simple task: move a cyan sphere towards a gold target. The extension makes the target move and reflect from the platform edges. Both tasks use learned PPO policies, not a scripted chasing rule.&lt;/p&gt;&#10;&lt;img src="https://zzefone.github.io/myblog/images/hci/lab-1-ml-agents/chase-runtime.png" alt="A cyan learning agent and gold moving target on the Signal Chase platform, rendered from the running Windows player."&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Runtime camera capture of the moving-target task. The desktop control overlay is not included in this capture.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>HCI Lab: Gaussian Splatting from Images to Unity</title><link>https://zzefone.github.io/myblog/posts/hci-lab-gaussian-splatting/</link><pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-lab-gaussian-splatting/</guid><description>&lt;p&gt;This lab connects image-based training to a Unity scene. The trained model stores coloured, transparent 3D Gaussians rather than a triangle mesh. Each Gaussian has a position, scale, rotation and opacity; overlapping splats form the image seen by the camera.&lt;/p&gt;&#10;&lt;img src="https://zzefone.github.io/myblog/images/hci/gaussian-splatting/unity-filtered.png" alt="Two reconstructed hotdogs on a plate, rendered by the tested Unity Windows player using the filtered Gaussian model."&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Actual Unity camera capture, with the desktop control overlay excluded. Soft edges and stretched details are still visible.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>HCI Homework 4: Phone Shapes and Everyday MR</title><link>https://zzefone.github.io/myblog/posts/hci-homework-4/</link><pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-homework-4/</guid><description>&lt;h2 id="lecture-10---the-shape-of-smartphones"&gt;&#10; Lecture 10 - The shape of smartphones&#10; &lt;a class="heading-link" href="#lecture-10---the-shape-of-smartphones"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h2&gt;&#10;&lt;p&gt;Earlier keyboard-based smartphones reserved much of their front surface for typing. Touchscreens gave that space to the display: the same surface could become a keyboard, a map, or a video player. Larger screens suited reading and media, but also made one-handed use harder.&lt;/p&gt;&#10;&lt;img src="https://zzefone.github.io/myblog/images/hci/homework-4/phone-shapes.svg" alt="Schematic progression from a keyboard smartphone to a touchscreen slab and an unfolding phone. A fourth panel shows a possible future combination of phone, glasses, and watch."&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Changes in input and screen space. The last panel is a proposal, not a product forecast.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>HCI Homework 3: An AR Guide for Finding a Room</title><link>https://zzefone.github.io/myblog/posts/hci-homework-3/</link><pubDate>Sun, 04 Oct 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-homework-3/</guid><description>&lt;h2 id="lecture-7---three-ideas-for-augmenting-human-abilities"&gt;&#10; Lecture 7 - Three ideas for augmenting human abilities&#10; &lt;a class="heading-link" href="#lecture-7---three-ideas-for-augmenting-human-abilities"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h2&gt;&#10;&lt;p&gt;I focused on small difficulties that AR could help with: finding a place, understanding language, and remembering a sequence of actions.&lt;/p&gt;&#10;&lt;img src="https://zzefone.github.io/myblog/images/hci/homework-3/three-ideas.svg" alt="Three concept sketches: an indoor direction arrow, translated text beside a sign, and an instruction beside a machine control."&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Concept sketches. The backgrounds and overlays are schematic.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;Room Guide.&lt;/strong&gt; Show the next direction near a corridor junction, with the destination name always visible. It could reduce the effort of matching a floor plan to the place in front of you. Wrong or outdated positioning would be its main weakness.&lt;/p&gt;</description></item><item><title>HCI Homework 2: Body Interfaces and the Ultimate Display</title><link>https://zzefone.github.io/myblog/posts/hci-homework-2/</link><pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-homework-2/</guid><description>&lt;h2 id="lecture-4---an-hci-researcher-pedro-lopes"&gt;&#10; Lecture 4 - An HCI researcher: Pedro Lopes&#10; &lt;a class="heading-link" href="#lecture-4---an-hci-researcher-pedro-lopes"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h2&gt;&#10;&lt;p&gt;Pedro Lopes leads the Human Computer Integration Lab at the University of Chicago. His work studies interfaces that connect to the body through touch, muscle stimulation, and other sensations. The computer can provide physical feedback instead of only showing instructions on a screen.&lt;/p&gt;&#10;&lt;p&gt;Two recent projects make this approach quite concrete:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Generative Muscle Stimulation, CHI 2026.&lt;/strong&gt; The system uses a person&amp;rsquo;s view and body pose to generate physical assistance for everyday tasks. It constrains the generated instructions using joint limits and knowledge about muscle stimulation. This makes context important: the same object can require different actions in different situations.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Myo Action, CHI 2026.&lt;/strong&gt; Muscle signals trigger stimulation that assists an action the person has already started. The aim is to speed up movement while preserving the person&amp;rsquo;s decision to act.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The interesting HCI question is control. Assistance should be easy to interrupt, and the person should understand when the system is acting. A technically effective movement could still feel wrong if it happens unexpectedly.&lt;/p&gt;</description></item><item><title>HCI Homework 1: Affordances, Gestalt Laws, and Dark Patterns</title><link>https://zzefone.github.io/myblog/posts/hci-homework-1/</link><pubDate>Sat, 26 Sep 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-homework-1/</guid><description>&lt;p&gt;This homework looks at three ways design affects behaviour: the actions an object suggests, the visual groups people perceive, and the choices an interface tries to steer.&lt;/p&gt;&#10;&lt;h2 id="lecture-1---affordances"&gt;&#10; Lecture 1 - Affordances&#10; &lt;a class="heading-link" href="#lecture-1---affordances"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h2&gt;&#10;&lt;p&gt;An affordance is an action that an object makes possible. Its shape and signs help people discover that action. A well-designed door needs little explanation.&lt;/p&gt;&#10;&lt;h3 id="good-example-a-crash-bar-on-an-exit-door"&gt;&#10; Good example: a crash bar on an exit door&#10; &lt;a class="heading-link" href="#good-example-a-crash-bar-on-an-exit-door"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h3&gt;&#10;&lt;img src="https://zzefone.github.io/myblog/images/hci/homework-1/crash-bar-door.jpg" alt="A school exit door with a horizontal crash bar."&gt;&#10;&#10;&lt;p&gt;&lt;em&gt;Figure 1. A horizontal crash bar suggests “push here” through its size, position, and direction.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>HCI Lab 1b: Unity Setup with an Existing Project</title><link>https://zzefone.github.io/myblog/posts/hci-lab-1-unity-setup/</link><pubDate>Tue, 22 Sep 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-lab-1-unity-setup/</guid><description>&lt;p&gt;Unity was already working for my Computer Graphics project, Corebound. For this lab, I am documenting that existing environment and its recorded results instead of creating another empty project. The screenshots below come from the Windows player run on 11 October 2026.&lt;/p&gt;&#10;&lt;p&gt;The separate &lt;a href="https://zzefone.github.io/myblog/posts/hci-lab-1-ml-agents/" &gt;ML-Agents lab&lt;/a&gt; adds trained reaching and chasing policies. This page remains the basic Unity setup record.&lt;/p&gt;&#10;&lt;h2 id="environment-and-project-structure"&gt;&#10; Environment and project structure&#10; &lt;a class="heading-link" href="#environment-and-project-structure"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h2&gt;&#10;&lt;p&gt;Corebound uses Unity 6000.0.23f1, the Built-in Render Pipeline, and a Windows build with the Mono scripting backend. It is a small 3D game: move a sphere, collect eight energy cores, and reach the reactor.&lt;/p&gt;</description></item><item><title>HCI Lab 1a: Setting Up the Course Blog</title><link>https://zzefone.github.io/myblog/posts/hci-lab-1-blog-setup/</link><pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate><guid>https://zzefone.github.io/myblog/posts/hci-lab-1-blog-setup/</guid><description>&lt;p&gt;The lab asks for an online blog and a record of the setup process. My blog uses Hugo Extended with the hugo-coder theme. It is a course portfolio rather than a single stream of unrelated posts.&lt;/p&gt;&#10;&lt;h2 id="organising-the-work"&gt;&#10; Organising the work&#10; &lt;a class="heading-link" href="#organising-the-work"&gt;&#10; &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;&#10; &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;&#10; &lt;/a&gt;&#10;&lt;/h2&gt;&#10;&lt;p&gt;The Courses page gives each subject its own space. Posts carry a course code, such as HCI, so they appear automatically on the right course page. Within each homework, lecture headings keep the answers separate. Lab work gets its own post.&lt;/p&gt;</description></item></channel></rss>