👋 Welcome to my Web!

My Name is Yu Wei, Feng

I will share my life here, such as some daily thoughts, notes, etc.

Feel free to browse this site!

My native language is Chinese, but I will try my best to write the blog in English.

TounchDesigner vs Unity (XR)

一、VR 設備大概可以怎麼分類? 先把設備種類講清楚,後面範式才好對齊: PC-VR(繫線型) 例:HTC Vive / Vive Pro、Valve Index、舊 Oculus Rift、Windows MR,或 Quest 透過 Link/AirLink 當 PC-VR 用。 頭顯只是顯示器+追蹤裝置,主要算力在 Windows PC 上。 常用 SteamVR / OpenVR / OpenXR 這種 runtime。 Standalone VR(一體機) ...

November 14, 2025 · 5 min · Wei, Feng

VST Introduction

合成器, 效果器, 混音相关算法与开源实践 功能概述 图1. 三种算法在音乐工程中的示意图 合成器 Synthesizer 合成器可以理解成一种特别的音源,由创作者调节参数做出独一无二的声音。与虚拟乐器(VSTi)不同的,合成器不是为了模仿已存在的乐器,而是根据创作者自身对乐曲的需求特别产生。早期合成器的声音,多为了渲染乐曲的氛围而生。到了电子音乐(EDM)被主流肯定的年代,合成器逐渐成为了歌曲的主角。 合成器的原理,最简单的理解便是对波形的改造,可能将两个波叠加,相减,或是对单一波的形状调整,都能得到不一样的声音。 ...

March 12, 2025 · 12 min · Wei, Feng

ZJU postgraduate entrance examination sharing

ZJU考研分享 Part1 - 来内地考研? 那首先,就是关于考研的选择。 城市选择: 生活成本 第一个你可能会好奇的就是城市的选择,浙江大学在杭州,杭州不像上海是一个节奏快速,举世闻名的大城市,最直观的比如说物价可能就会低一点。那对于杭州,我会以在这个地方的生活成本,还有我所知道在杭州的实习机会来跟各位分享。 ...

December 14, 2024 · 6 min · Wei, Feng

Simple Wayfire Keybind

Some simple Wayfire custom keybind ScreenShot You can use grim and slurp to have screenshot function grim screenshot slurp select a region Install grim and slurp yay -S grim slurp For example shell script # ~/.config/wayfire/scripts/screenshot.sh path="/home/novel2430/Pictures/screenshot/" # <--- Where you want to save your screenshots now_date=$(date '+%Y%m%d-%H%M%S') file_name="${path}${now_date}.png" msg="save as ${file_name}" case $1 in full) grim ${file_name} && dunstify -a "Screenshot" "Full" "${msg}" -r 2003 ;; select) grim -g "$(slurp)" ${file_name} && dunstify -a "Screenshot" "Select" "${msg}" -r 2003 ;; esac Clipboard Manager We need two packages: cliphist and wl-clipboard ...

April 8, 2024 · 1 min · Wei, Feng

Alpine to Sway

Alpine Linux with Sway Bash, Text Editor Packages apk add vim bash Create Non Root User Packages apk add sudo shadow Command Add User useradd -m -G wheel -s /bin/bash <user_name> passwd <user_name> sudo file EDITOR=vim visudo # Make wheel group can use sudo Setup eudev setup-devd udev GPU Intel apk add mesa-dri-gallium AMD Read here Nvidia Read here PAM apk add linux-pam shadow-login Elogind apk add elogind polkit-elogind dbus rc-update add elogind rc-update add polkit rc-update add dbus Sway apk add sway Reboot After rebooting your computer, you should use your non-root userer to log in ...

April 7, 2024 · 1 min · Wei, Feng

Basic AlpineLinux (UEFI) Install

Alpine Linux(UEFI) Semi-Automatic Installation Enter Installation Your login username is root, password is empty Check UEFI test -d /sys/firmware/efi && echo UEFI || echo BIOS Keyboard Layout Answer some questions setup-keymap ## answer 'us' twice Hostname setup-hostname <your_hostname> Networking Alpine Linux’s wiki recommend you using ethernet to connect internet But you can also use setup-interfaces to use wireless connection Answer some questions setup-interfaces After the configuration rc-service networking start rc-update add networking boot Apk Repositories You can find all repositories mirrors in here Edit /etc/apk/repositories ...

April 5, 2024 · 1 min · Wei, Feng

Basic Wayfire Applications

Applications on Wayfire Setup Wayfire Basic Environment [ App Menu ] (wofi) yay -S wofi # ~/.config/wayfire.ini ... # Start your launcher # https://hg.sr.ht/~scoopta/wofi # Note: Add mode=run or mode=drun to ~/.config/wofi/config. # You can also specify the mode with --show option. binding_launcher = <super> KEY_D # <-- Change key binding command_launcher = wofi --show drun # <-- Change exec command ... [ Web Browser ] (firefox) yay -S firefox Now you can use Wofi to open Firefox ...

March 26, 2024 · 2 min · Wei, Feng

Basic Archlinux Wayfire Install

Basic ArchLinux(UEFI) + WayFire Install Basic Arch Install [ Check UEFI or BIOS ] ls /sys/firmware/efi/efivars If the directory not exist, you are not in UEFI mode. [ Internet ] Check system activate internet interface ip link For Ethernet (DHCP) Good to go! For WiFi (iwd) enter interactive prompt iwctl list all wifi device [iwd] device list select the device you want to use, i.e: wlan0 and start scanning [iwd] station <device> scan after scanning, you can list all available networks ...

March 26, 2024 · 3 min · Wei, Feng

Cozy

Song - Cozy A little song for my ex. I hope you can be happy even when I’m not with you 🫠

February 20, 2024 · 1 min · Wei, Feng

Replacement Selection

7-1 Replacement Selection When the input is much too large to fit into memory, we have to do external sorting instead of internal sorting. One of the key steps in external sorting is to generate sets of sorted records (also called runs) with limited internal memory. The simplest method is to read as many records as possible into the memory, and sort them internally, then write the resulting run back to some tape. The size of each run is the same as the capacity of the internal memory. Replacement Selection sorting algorithm was described in 1965 by Donald Knuth. Notice that as soon as the first record is written to an output tape, the memory it used becomes available for another record. Assume that we are sorting in ascending order, if the next record is not smaller than the record we have just output, then it can be included in the run. For example, suppose that we have a set of input { 81, 94, 11, 96, 12, 99, 35 }, and our memory can sort 3 records only. By the simplest method we will obtain three runs: { 11, 81, 94 }, { 12, 96, 99 } and { 35 }. According to the replacement selection algorithm, we would read and sort the first 3 records { 81, 94, 11 } and output 11 as the smallest one. Then one space is available so 96 is read in and will join the first run since it is larger than 11. Now we have { 81, 94, 96 }. After 81 is out, 12 comes in but it must belong to the next run since it is smaller than 81. Hence we have { 94, 96, 12 } where 12 will stay since it belongs to the next run. When 94 is out and 99 is in, since 99 is larger than 94, it must belong to the first run. Eventually we will obtain two runs: the first one contains { 11, 81, 94, 96, 99 } and the second one contains { 12, 35 }. Your job is to implement this replacement selection algorithm. ...

February 14, 2024 · 2 min · Wei, Feng