Game animation adaptation method based on emotion perception

By collecting multi-source signals and combining them with game context, a lightweight neural network model is used to decouple multi-dimensional real-time emotion vectors, generate animation decisions, and perform reverse optimization. This solves the problem of insufficient real-time adjustment in existing game animation systems and achieves personalized animation adaptation and immersive experience.

CN121767518BActive Publication Date: 2026-07-10COMMUNICATION UNIVERSITY OF CHINA

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
COMMUNICATION UNIVERSITY OF CHINA
Filing Date
2026-03-04
Publication Date
2026-07-10

AI Technical Summary

Technical Problem

Existing game animation systems cannot dynamically adjust to the player's psychological state in real time, resulting in a lack of emotional adaptability in the game experience. Furthermore, existing emotion recognition methods have low accuracy and are easily affected by environmental interference. The animation adjustment logic is simple and direct, which disrupts the game balance and narrative coherence.

Method used

By collecting multi-source signals from players, including physiological signals, behavioral operation signals, and facial image signals, and combining them with game context vectors, a lightweight neural network model is used to decouple accurate multi-dimensional real-time emotion vectors. Dynamic probability maps and stylized filters are used to generate animated decisions, and the model is optimized through reverse fine-tuning to adapt to players' personalized reactions.

Benefits of technology

It achieves intelligent diversity and artistic consistency in game animation, improves the accuracy and robustness of emotional state judgment, makes animation adjustments more natural and intelligent, enhances immersion, and forms a personalized optimization loop to adapt to the unique reaction patterns of different players.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SMS_3
    Figure SMS_3
  • Figure SMS_9
    Figure SMS_9
  • Figure QLYQS_1
    Figure QLYQS_1
Patent Text Reader

Abstract

The application relates to the technical field of game animation, and particularly provides a game animation self-adaption method based on emotion perception, which comprises the following steps: collecting multi-source signals of a player and performing pretreatment, simultaneously obtaining a current game context vector, inputting the pretreated multi-source signals and the game context vector into an emotion decoupling model, and outputting a four-dimensional emotion vector E(t) with a confidence score C(t); calculating an animation behavior identifier A id and an animation adjustment parameter set A params according to the emotion vector E(t); a game engine completes animation rendering according to the animation behavior identifier A id and the animation adjustment parameter set A params , and outputs the result to a screen; and the game engine dynamically calculates a fluency index by analyzing new player data flow generated after executing animation adjustment, and reversely fine-tunes parameters of the emotion decoupling model and a probability mapping diagram according to the fluency index. Through the above scheme, the problems of high delay, poor robustness and lack of coupling with a game context in animation self-adaption are solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of game animation technology, and specifically provides an adaptive method for game animation based on emotion perception. Background Technology

[0002] With the development of the gaming industry, players have placed higher demands on the immersion and personalized experience of games. Currently, most game animation systems are preset and linear, unable to dynamically adjust according to the player's real-time psychological state, resulting in a lack of emotional adaptability in the gaming experience.

[0003] In existing technologies, there are some studies that attempt to combine emotion recognition with games, for example:

[0004] Single-modal emotion recognition methods, such as analyzing a player's voice tone or capturing facial expressions from a camera, roughly determine emotions. These methods often have low accuracy, are easily affected by environmental factors (such as lighting and background noise), and cannot reflect the complex and continuous emotional fluctuations of players during gameplay.

[0005] Non-real-time or superficial game adjustments: Some technologies use emotion recognition results for macro-level, non-continuous adjustments such as game level selection or background music switching, rather than delving into character animation behavior, which is the level most closely related to player interaction.

[0006] Animation adjustments are disconnected from emotional logic: A few solutions attempt to adjust animations, but the adjustment logic is simple and direct (such as "the character's movements slow down when sad"). This mechanical mapping lacks an understanding of the game context and player intentions, the adjustments are stiff, and may even disrupt game balance and narrative coherence. Summary of the Invention

[0007] To overcome the above-mentioned shortcomings, this invention is proposed to solve the technical problems of high latency, poor robustness, and lack of coupling with the game context in existing adaptive animation.

[0008] This invention provides an adaptive method for game animation based on emotion perception, comprising the following steps:

[0009] S1: Collect and preprocess the player's multi-source signals, and obtain the current game context vector. Input the processed multi-source signals and game context vector into the emotion decoupling model, and output a four-dimensional emotion vector E(t)=[valence,arousal,frustration,focus] with confidence score C(t);

[0010] S2: Calculate the animation behavior identifier A based on the emotion vector E(t). id and animation adjustment parameter set A params Among them, animation behavior identifier Aid Obtained through a probability mapping graph formed by the emotion vector E(t);

[0011] S3: The game engine identifies A based on animation behavior. id and animation adjustment parameter set A params Complete the animation rendering and output the results to the screen;

[0012] S4: By analyzing the newly generated player data stream after the animation adjustment, dynamically calculate the smoothness index, and fine-tune the parameters of the emotion decoupling model and probability mapping based on the smoothness index.

[0013] Furthermore, the player's multi-source signals include physiological signals, behavioral operation signals, and facial image signals. Physiological signals are collected through a wristband device, behavioral operation signals are obtained by recording operation events per second and calculating trajectory jitter rate through the log system built into the game client, and facial image signals are obtained by capturing facial video of the player through a camera.

[0014] Furthermore, each set of physiological signals, behavioral operation signals, and facial image signals is assigned a uniform, high-precision millisecond-level timestamp T. stamp And perform the following preprocessing:

[0015] PPI sequences are extracted from the acquired physiological signals, and time-domain and frequency-domain features are calculated to obtain the processed physiological signal e. processed =[hrv lf ,hrv hf ,gsr mean ],hrv lf Heart rate variability (HRV) represents low-frequency power. hf GSR represents high-frequency power of heart rate variability. mean This represents the mean value of the skin conductance response;

[0016] From the collected behavioral operation signals o raw The number of operations per second is counted to obtain the operation frequency. freq The operation accuracy is obtained by calculating the average pixel deviation between the preset number of effective clicks and the target center. acc The mouse movement trajectory is low-pass filtered, and its root mean square error compared to the smooth trajectory is calculated to obtain the jitter index o. shake Synthetic behavior operation signal o vector =[o freq ,o acc ,o shake ];

[0017] Face detection and key point localization are performed on the acquired facial image signals, and the aspect ratio of the eyes is calculated. left Eyebrow displacement raise lip displacementcorner The facial image signal f is obtained. micro =[ear left ,brow raise ,lip corner ]

[0018] Furthermore, the processed physiological signals, behavioral operation signals, facial image signals, and game context vectors are normalized and then concatenated to form a fused feature vector F. fusion (t), F fusion (t) is input into the trained emotion decoupling model and outputs a four-dimensional emotion vector E(t) and a confidence score C(t). The range of each dimension of the four-dimensional emotion vector E(t) is [-1,1], and the range of the confidence score C(t) is [0,1].

[0019] Furthermore, obtain the game context vector c from the game engine. state =[scene_id,is_combat,difficulty_level,player_health], where scene_id represents the story chapter, difficulty_level represents the difficulty level of the current level, player_health represents the player character's health, and is_combat represents the hostile / friendly attribute of the interaction with non-player characters.

[0020] Furthermore, a lightweight neural network model is constructed. This model takes multi-source signals and game context vectors as input. Internally, the model learns based on different game context vectors c through an attention mechanism. state Different weights are assigned to physiological and behavioral signals from multiple sources, and an emotion decoupling model is obtained through training.

[0021] Furthermore, based on the emotion vector E(t) and the current game state, a dynamic probability P is calculated to determine the animation behavior identifier A. id This includes the following steps:

[0022] S211: Define an animation strategy library for each core game character, containing all animation behaviors available in the game state and their behavior identifiers A. id Each animation action has a corresponding base probability weight W. base ;

[0023] S212: Calculate the adjustment factor ΔW based on the emotion vector E(t);

[0024] S213: Calculate the dynamic probability P=Softmax(W) for each animation action. base + C(t) ΔW);

[0025] S214: Select the animation behavior with the highest dynamic probability and output the corresponding animation behavior identifier A. id .

[0026] Furthermore, based on the dimension values ​​of the emotion vector E(t), the blending weights of one or more stylized animation filters are calculated and applied to determine the animation adjustment parameter set A. params This includes the following steps:

[0027] S221: Preset multiple animation filters and define the association function between each animation filter and a dimension or combination of dimensions in the emotion vector E(t);

[0028] S222: For each animation filter, calculate the original weight w based on its correlation function. raw ;

[0029] S223: Normalize the original weights of all animation filters to obtain the normalized weights w of each animation filter. filter_1 ,w filter_2 ..., integrating the normalized weights yields the final mixed weight vector W. filter =[w filter_1 ,w filter_2 ,...];

[0030] S224: Based on the mixed weight vector W filter Multiple animation filters are overlaid to generate a set of animation adjustment parameters A. params .

[0031] Furthermore, step S4 includes,

[0032] S41: Maintain a first-in-first-out data buffer of a preset length L, continuously storing data pairs for each frame or second, including the emotion vector E(t), the current game state S(t), and the animation behavior identifier A. id Animation adjustment parameter set A params Subsequent signals;

[0033] S42: Define an active event (Event) pos and negative events neg Analyze the data pairs in the buffer. If the frustration rate is greater than 0.7 and lasts for more than 10 seconds, it is recorded as a high frustration duration event. frust ;

[0034] S43: Every fixed period T opt Calculate the smoothness metric of the current cache window. Where α represents the weight of positive events, β represents the weight of negative events, and γ represents the weight of the duration of frustration;

[0035] S44: If F score Below the preset threshold F threshold This will trigger optimization.

[0036] Furthermore, the optimization includes:

[0037] The fused feature vector F of all data pairs in the data cache fusion Using F(t) as input and E(t) as label input, the emotion decoupling model introduces F... score Loss function adjustment,

[0038] For the smoothness index F score Animation behavior identifier A in reduced data pairs id Reduce its base weight W in the probability map. base .

[0039] The working principle and beneficial effects of this invention:

[0040] In implementing the technical solution of this invention, a precise multidimensional real-time emotion vector E(t) and confidence level C(t) are decoupled by fusing physiological signals, behavioral data, and game context. Using a dynamic probability map and stylized filters, E(t) is combined with the game state S(t) to generate animation decisions that combine intelligent diversity with artistic consistency. These decision parameters are seamlessly and smoothly applied to the game engine's animation system and rendered. The player experience smoothness index F is calculated using execution effect data within a cached window. score This serves as a standard for reverse fine-tuning, forming a continuous optimization cycle that enables the system to learn autonomously and adapt to players' personalized reaction patterns. Detailed Implementation

[0041] Some embodiments of the present invention are described below. Those skilled in the art should understand that these embodiments are merely illustrative of the technical principles of the present invention and are not intended to limit the scope of protection of the present invention.

[0042] The game animation adaptive method based on emotion perception in this embodiment mainly includes the following steps S1-S4.

[0043] Step S1: Collect and preprocess the player's multi-source signals, and obtain the current game context vector. Input the processed multi-source signals and game context vector into the emotion decoupling model, and output a multi-dimensional emotion vector E(t) with confidence score C(t).

[0044] In one implementation, the multi-source signals collected from the player include physiological signals, behavioral operation signals, and facial image signals. Specifically, physiological signals (heart rate variability HRV, skin conductance response GSR) are collected through a wristband device, and the raw HRV and GSR data are sent to the game client via Bluetooth. The game client's built-in log system records operation events per second and calculates trajectory jitter rate to obtain behavioral operation signals (operation frequency, accuracy, and degree of tremor in mouse movement trajectory). The camera captures facial video of the player to obtain facial image signals, and a lightweight face mesh model (such as MediaPipeFaceMesh) is used to extract key point motion features.

[0045] In one implementation, physiological signals e are collected. raw Behavioral operation signals o raw and facial image signal f raw Then, each data packet is tagged with a uniform, high-precision, millisecond-level timestamp T. stamp The player's multi-source signals are preprocessed as follows:

[0046] From the collected physiological signals e raw The PPI sequence is extracted, and the time-domain and frequency-domain features are calculated to obtain the processed physiological signal e. processed =[hrv lf ,hrv hf ,gsr mean ]. hrv lf Heart rate variability (HRV) represents low-frequency power. hf GSR represents high-frequency power of heart rate variability. mean This represents the mean value of skin conductance response.

[0047] From the collected behavioral operation signals o raw The number of operations per second is counted to obtain the operation frequency. freq The average pixel deviation between the most recent 10 valid clicks and the target center is calculated to obtain the operation accuracy. acc The mouse movement trajectory is low-pass filtered, and its root mean square error compared to the smooth trajectory is calculated to obtain the jitter index o. shake Synthetic behavioral feature vector o vector =[o freq ,o acc ,o shake [This serves as the processed action signal o] vector .

[0048] For the acquired facial image signal f raw Perform face detection and 68-point landmark localization. Calculate the eye aspect ratio. left Eyebrow displacement raise lip displacementcorner Features such as facial micro-expression feature vector f are obtained. micro =[ear left ,brow raise ,lip corner ] as the processed facial image signal f micro .

[0049] In one implementation, the game context vector c is obtained from the game engine API. state =[scene_id,is_combat,difficulty_level,player_health], specifically, a context vector containing the following fields is exported through the game engine (such as Unity): scene_id (identifies the story chapter), difficulty_level (the difficulty level of the current level), player_health (the player character's health), and is_combat (the hostile / friendly attribute for interactions with non-player characters).

[0050] Furthermore, the processed physiological signal e processed Behavioral operation signal o vector Facial image signal f micro and game context vector c state After normalization, the vectors are concatenated to form a fused feature vector F. fusion (t). F fusion (t) is input into the trained emotion decoupling model and outputs a four-dimensional emotion vector E(t) = [valence (pleasure), arousal (activation), frustration (frustration), focus (focus)] with a value range of [-1,1], and a confidence score C(t) with a value range of [0,1].

[0051] In this embodiment, a lightweight neural network model is constructed, which takes multi-source signals and game context vectors as input. Internally, the model learns based on different game context vectors c through an attention mechanism. state Different weights are assigned to physiological and behavioral signals. For example, when the hostile / friendly attribute is_combat=1 in interactions with non-player characters, the hriv... hf (Reflecting mental stress) and o shake The weight of facial image signals (reflecting tension) will increase; while in dialogue scenes, the weight of facial image signals will increase. micro The weights will be higher. Through training, an emotion decoupling model is obtained, which can distinguish between emotional responses triggered by game content and external environmental interference, such as HRV. hfThe increase in emotion is decoupled into "excitement caused by tense plot" or "annoyance caused by game lag". The final output is a multi-dimensional, quantitative real-time emotion vector E(t)=[valence,arousal,frustration,focus], with dimensions including pleasure, activation, frustration, and focus, and a value range of [-1,1], as well as a confidence score C(t), with a value range of [0,1].

[0052] In this embodiment, unlike simply fusing multi-sensor data, the game context state is introduced as a key dimension to "decouple" the original physiological / behavioral signals from their intent, distinguishing between emotional responses originating from the game content and external interference.

[0053] Step S2: Calculate the animation behavior identifier A based on the emotion vector E(t). id and animation adjustment parameter set A params .

[0054] In one implementation, the dynamic probability P is calculated based on the emotion vector E(t) and the current game state to determine the animation behavior identifier A. id Specifically, this includes the following steps S211-S214.

[0055] S211: Define an animation strategy library for each core game character, containing all animation behaviors available in game states (such as combat, exploration, and dialogue) and their behavior identifiers A. id Each animation action has a corresponding base probability weight W. base .

[0056] In one implementation, when the core game character is "Knight" and the game state is "Battle," examples of all animation behaviors are shown in the table below:

[0057]

[0058] Basic probability weights W base = Damage value of the standard action / Time taken for the standard action Design preference coefficient. For example, Quick Attack has moderate damage, short duration, and low risk, and is a "standard action" that designers hope players will use frequently, so it is given a high base probability weight.

[0059] S212: Calculate the adjustment factor ΔW based on the emotion vector E(t).

[0060] In one implementation, a high frustration value results in a positive ΔW for "defensive" animations and a negative ΔW for "reckless" animations. For each animation behavior, the adjustment factor ΔW = Σ(influence coefficients k of each dimension of the emotion vector). j Behavior type label corresponding coefficient c ij ), where k j This represents the overall influence of dimension j in the emotion vector on decision-making, and is dynamically set based on the values ​​of each dimension in the emotion vector. ij The response coefficient of the behavior type label of animation behavior i to the emotion dimension j is pre-set.

[0061] For example, setting k frustration =1.2, k valence =0.8. When the behavior type label is Aggressive / Reckless, the response coefficient to "frustration" is -0.5, and the response coefficient to "arousal" is +0.3. Therefore, the adjustment factor ΔW for the animated behavior Heavy_Attack is (1.2). (-0.5))+(0.8 0.3) = -0.36.

[0062] S213: Calculate the dynamic probability P=Softmax(W) for each animation action. base + C(t) ΔW).

[0063] S214: Select the animation behavior with the highest dynamic probability and output the corresponding animation behavior identifier A. id .

[0064] In this embodiment, the probability P of each animation behavior selected in the animation strategy library is calculated and determined by the real-time emotion vector E(t), forming a probability mapping diagram. For example, in combat, when the "frustration" dimension increases, the probability weight of the "defensive stance" animation will increase, while the probability weight of "aggressive slash" will decrease, but it will never drop to zero, preserving the uncertainty and diversity of behavior.

[0065] In one implementation, based on the dimension value of the emotion vector E(t), the blending weights of one or more stylized animation filters are calculated and applied to determine the animation adjustment parameter set A. params Specifically, it includes the following steps S221-S224.

[0066] S221: Preset multiple animation filters and define the association function between each animation filter and a dimension or combination of dimensions in the emotion vector E(t).

[0067] Each filter does not simply correspond to a single emotion, but rather to a complex emotional state, driven by a non-linear combination of multiple dimensions in E(t). The values ​​of each dimension of the animation filter and the emotion vector E(t) are shown in the table below:

[0068]

[0069] S222: For each animation filter, calculate an initial weight w based on its correlation function. raw .

[0070] Specifically:

[0071] Heavy filter: w raw(heavy) =max(0,E frustration -0.4) (1-E arousal The greater the sense of frustration (0.4) and the lower the activation level, the stronger the sense of heaviness.

[0072] Lightweight filter: w raw(light) =max(0,E valence ) clamp(E arousal (0.3, 1.0). A feeling of lightness is only produced when the level of pleasure is positive and the activation level is within the effective range.

[0073] Vibration filter: w raw(jittery) =sqrt(E arousal E focus Activation and focus work together to produce neurotic tremors, and their coupling effect is simulated using geometric mean.

[0074] Hesitation filter: w raw(hesitant) =(1-E valence ) E focus (1-abs(E arousal -0.5). The less unpleasant, highly focused, and the smaller the activation level deviates from the neutral value (0.5), the stronger the hesitation.

[0075] In one implementation, it is assumed that the emotion vector calculated for the current frame is E(t) = [valence = 0.3, arousal = 0.8, frustration = 0.6, focus = 0.9]. This describes a state of "frustration but high focus and tension".

[0076] Heavy filter calculation: max(0, 0.6-0.4) (1-0.8)=0.2 0.2 = 0.04;

[0077] Lightweight filter calculation: max(0,0.3) clamp(0.8, 0.3, 1.0) = 0.3 0.8 = 0.24;

[0078] Vibration filter calculation: sqrt(0.8) 0.9) = sqrt(0.72) ≈ 0.85;

[0079] Hesitation filter calculation: (1-0.3) 0.9 (1-abs(0.8-0.5))=0.7 0.9 (1-0.3)=0.63 0.7 = 0.44.

[0080] S223: Normalize the original weights of all animation filters to obtain the normalized weights w of each animation filter. filter_1 ,w filter_2 ..., integrating the normalized weights yields the final mixed weight vector W. filter =[w filter_1 ,w filter_2 ,...].

[0081] S224: Based on the mixed weight vector W filter Multiple animation filters are overlaid to generate a set of animation adjustment parameters A. params .

[0082] In this embodiment, unlike the lookup-based mapping of "emotional state - fixed animation parameters", a dynamic probabilistic animation decision network is constructed, and an overlayable "stylized animation filter" is introduced to ensure that the adjustment not only conforms to the player's emotions but also maintains the consistency between the character's personality and the game style.

[0083] In one implementation, the player character is assumed to be in a "stealth" state. The animation strategy library contains animation clips such as "slow movement," "crouching and standing still," "peeking," and "preparing to backstab." A dynamic probability map recalculates probabilities based on the current emotion vector (e.g., frustration = 0.8, indicating high frustration) and historical data (recently, many game failures due to recklessness). This might cause the probability of "slow movement" to decrease from 60% to 40%, and the probability of "crouching and standing still" to increase from 30% to 55%. Simultaneously, high frustration and low pleasure trigger the superposition of a "heavy filter" (mixed weight 0.7) and a "hesitant filter" (mixed weight 0.3). The effect of the "heavy filter" might manifest as reducing the root skeleton movement speed of stealth movement by 15% and increasing the swaying damping of the upper body skeleton. The game engine's animation controller selects an animation (e.g., "crouching and standing still") based on the final probability and applies the mixed filter parameters for rendering.

[0084] Step S3: The game engine uses animation behavior identifier A idand animation adjustment parameter set A params Complete the animation rendering and output the results to the screen.

[0085] According to animation behavior identifier A id Load the corresponding animation behavior from the resource library or activate the corresponding animation state node. Adjust the animation parameter set A. params The parameters in the code are applied to the character's skeleton controller, skinned mesh, or particle system via the game engine's animation blueprints or scripts.

[0086] In one implementation, if the animation transition is not instantaneous, a short cross-fade time is set between the current animation and the new animation A_id. The duration of this cross-fade time can be dynamically fine-tuned according to the arousal dimension of C(t) or E(t) (the transition is faster when the arousal is high).

[0087] Step S4: By analyzing the newly generated player data stream after the animation adjustment, dynamically calculate the smoothness index, and fine-tune the parameters of the emotion decoupling model and probability mapping based on the smoothness index.

[0088] S41: Maintain a first-in-first-out data buffer of a preset length L (e.g., 300 seconds), continuously storing data pairs for each frame or second, including the emotion vector E(t), the current game state S(t) (obtained from the game engine), and the animation behavior identifier A. id Animation adjustment parameter set A params Subsequent signals.

[0089] S42: Define an active event (Event) pos and negative events neg Analyze the data pairs in the buffer. If the frustration rate is greater than 0.7 and lasts for more than 10 seconds, it is recorded as a high frustration duration event. frust .

[0090] S43: Calculate the smoothness metric for the current cache window every fixed period Topt (e.g., 60 seconds). Here, α, β, and γ are fluency metrics. α represents the weight of positive events, a positive coefficient used to measure the positive contribution of positive events to the overall fluency experience; β represents the weight of negative events, a positive coefficient used to measure the degree to which negative events impair the fluency experience; and γ is a positive coefficient used to measure the negative impact of persistently high-frustration events on the experience. Initially, α can be set to 1.5, β to 2.5, and γ to 0.12.

[0091] S44: If the smoothness index F score Below the preset threshold F threshold Then, steps S45-S46 will be executed to trigger optimization.

[0092] S45: Combine the fused feature vector F of all data pairs in the data buffer. fusion Using E(t) as input and E(t) as label input, the emotion decoupling model introduces a fluency index F. score Adjustment of the loss function.

[0093] In this embodiment, the system uses data from the past 300 seconds as a mini-training set to slightly adjust the neuron connection weights related to "frustration" judgment in the emotion decoupling model, in order to more accurately distinguish between "excitement-induced frustration" and "negative frustration caused by boredom." Simultaneously, in the dynamic probability mapping graph, for the "stealth" state, the baseline probability weight of the "crouching still" animation associated with the "frustration" dimension is slightly lowered. Through several such fine-tuning cycles, the system gradually adapts to the player's unique style.

[0094] S46: Regarding the smoothness index F score Animation behavior identifier A in reduced data pairs id Reduce its base weight W in the probability map. base .

[0095] Based on step S1 above, by fusing physiological signals, behavioral data, and game context, a precise multidimensional real-time emotion vector E(t) and confidence level C(t) are decoupled, providing the system with reliable emotion perception input. Step S2 utilizes a dynamic probability map and stylized filters to combine E(t) with the game state S(t), generating animated decisions that combine intelligent diversity with artistic consistency, and outputting animated behavior A. id Adjusting parameter A with animation params Step S3 seamlessly and smoothly applies these decision parameters to the game engine's animation system and renders them. Step S4 calculates the player experience smoothness index F using the execution effect data within the cache window. score Based on this standard, the weights of the emotion decoupling model in step S1 and the probability mapping in step S2 are fine-tuned in reverse, forming a continuous optimization loop that enables the system to learn autonomously and adapt to the player's personalized reaction patterns.

[0096] At the perception level, the fusion and decoupling of multimodal signals with game context significantly improves the accuracy, robustness, and anti-interference ability of emotional state judgment, solving the pain point of single sensor failure. At the decision-making and execution level, the combination of probabilistic mapping and filter adjustment makes animation adaptation no longer a rigid, linear mechanical reaction, but a more natural, intelligent, and organic expression that conforms to character settings and game narrative logic, greatly enhancing immersion. The introduction of a closed-loop optimization mechanism transforms the system from static, universal rules into a dynamic, personalized experience engine, capable of continuously optimizing and adjusting strategies based on each player's unique reactions, truly achieving the long-term goal of "a thousand experiences for a thousand people," demonstrating outstanding technical practicality and commercial value.

[0097] It should be noted that although the steps in the above embodiments are described in a specific order, those skilled in the art will understand that in order to achieve the effects of the present invention, different steps do not necessarily have to be executed in such an order. They can be executed simultaneously (in parallel) or in other orders, and these variations are all within the scope of protection of the present invention.

[0098] The technical solution of the present invention has been described above through preferred embodiments. However, it will be readily understood by those skilled in the art that the scope of protection of the present invention is obviously not limited to these specific embodiments. Without departing from the principles of the present invention, those skilled in the art can make equivalent changes or substitutions to the relevant technical features, and the technical solutions after these changes or substitutions will all fall within the scope of protection of the present invention.

Claims

1. A game animation adaptive method based on emotion perception, characterized in that, Includes the following steps: S1: Collect and preprocess the player's multi-source signals, and obtain the current game context vector. Input the processed multi-source signals and game context vector into the emotion decoupling model, and output a four-dimensional emotion vector E(t)=[valence,arousal,frustration,focus] with confidence score C(t); S2: Calculate the animation behavior identifier A based on the emotion vector E(t). id and animation adjustment parameter set A params Among them, animation behavior identifier A id Obtained through a probability mapping graph formed by the emotion vector E(t); S3: The game engine identifies A based on animation behavior. id and animation adjustment parameter set A params Complete the animation rendering and output the results to the screen; S4: By analyzing the newly generated player data stream after the animation adjustment, dynamically calculate the smoothness index, and fine-tune the parameters of the emotion decoupling model and probability mapping based on the smoothness index; Based on the emotion vector E(t) and the current game state, calculate the dynamic probability P and determine the animation behavior identifier A. id This includes the following steps: S211: Define an animation strategy library for each core game character, containing all animation behaviors available in the game state and their behavior identifiers A. id Each animation action has a corresponding base probability weight W. base ; S212: Calculate the adjustment factor ΔW based on the emotion vector E(t); S213: Calculate the dynamic probability P=Softmax(W) for each animation action. base + C(t) ΔW); S214: Select the animation behavior with the highest dynamic probability and output the corresponding animation behavior identifier A. id ; Based on the dimension values ​​of the emotion vector E(t), calculate and apply the blending weights of one or more stylized animation filters to determine the set of animation adjustment parameters A. params This includes the following steps: S221: Preset multiple animation filters and define the association function between each animation filter and a dimension or combination of dimensions in the emotion vector E(t); S222: For each animation filter, calculate the original weight w based on its correlation function. raw ; S223: Normalize the original weights of all animation filters to obtain the normalized weights w of each animation filter. filter_1 ,w filter_2 ..., integrating the normalized weights yields the final mixed weight vector W. filter =[w filter_1 ,w filter_2 ,...]; S224: Based on the mixed weight vector W filter Multiple animation filters are overlaid to generate a set of animation adjustment parameters A. params .

2. The game animation adaptive method based on emotion perception according to claim 1, characterized in that, The player's multi-source signals include physiological signals, behavioral operation signals, and facial image signals. Physiological signals are collected through a wristband device, behavioral operation signals are obtained by recording operation events per second and calculating trajectory jitter rate through the game client's built-in log system, and facial image signals are obtained by capturing facial video of the player through a camera.

3. The game animation adaptive method based on emotion perception according to claim 2, characterized in that, Each set of physiological signals, behavioral operation signals, and facial image signals is assigned a uniform, high-precision millisecond-level timestamp T. stamp And perform the following preprocessing: PPI sequences are extracted from the acquired physiological signals, and time-domain and frequency-domain features are calculated to obtain the processed physiological signal e. processed =[hrv lf ,hrv hf ,gsr mean ],hrv lf Heart rate variability (HRV) represents low-frequency power. hf GSR represents high-frequency power of heart rate variability. mean This represents the mean value of the skin conductance response; From the collected behavioral operation signals o raw The number of operations per second is counted to obtain the operation frequency. freq The operation accuracy is obtained by calculating the average pixel deviation between the preset number of effective clicks and the target center. acc The mouse movement trajectory is low-pass filtered, and its root mean square error compared to the smooth trajectory is calculated to obtain the jitter index o. shake Synthetic behavior operation signal o vector =[o freq ,o acc ,o shake ]; Face detection and key point localization are performed on the acquired facial image signals, and the aspect ratio of the eyes is calculated. left Eyebrow displacement raise lip displacement corner The facial image signal f is obtained. micro =[ear left ,brow raise ,lip corner ].

4. The game animation adaptive method based on emotion perception according to claim 3, characterized in that, The processed physiological signals, behavioral signals, facial image signals, and game context vectors are normalized and then concatenated to form a fused feature vector F. fusion (t), F fusion (t) is input into the trained emotion decoupling model and outputs a four-dimensional emotion vector E(t) and a confidence score C(t). The range of each dimension of the four-dimensional emotion vector E(t) is [-1,1], and the range of the confidence score C(t) is [0,1].

5. The game animation adaptive method based on emotion perception according to claim 1, characterized in that, Obtain the game context vector c from the game engine. state =[scene_id,is_combat,difficulty_level,player_health], where scene_id represents the story chapter, difficulty_level represents the difficulty level of the current level, player_health represents the player character's health, and is_combat represents the hostile / friendly attribute of the interaction with non-player characters.

6. The game animation adaptive method based on emotion perception according to claim 5, characterized in that, Construct a lightweight neural network model that takes multi-source signals and game context vectors as input. Internally, the model learns based on different game context vectors c through an attention mechanism. state Different weights are assigned to physiological and behavioral signals from multiple sources, and an emotion decoupling model is obtained through training.

7. The game animation adaptive method based on emotion perception according to claim 1, characterized in that, Step S4 includes, S41: Maintain a first-in-first-out data buffer of a preset length L, continuously storing data pairs for each frame or second, including the emotion vector E(t), the current game state S(t), and the animation behavior identifier A. id Animation adjustment parameter set A params Subsequent signals; S42: Define an active event (Event) pos and negative events neg Analyze the data pairs in the buffer. If the frustration rate is greater than 0.7 and lasts for more than 10 seconds, it is recorded as a high frustration duration event. frust ; S43: Every fixed period T opt Calculate the smoothness metric of the current cache window. Where α represents the weight of positive events, β represents the weight of negative events, and γ represents the weight of the duration of frustration; S44: If F score Below the preset threshold F threshold This will trigger optimization.

8. The game animation adaptive method based on emotion perception according to claim 7, characterized in that, The optimizations include: The fused feature vector F of all data pairs in the data cache fusion Using F(t) as input and E(t) as label input, the emotion decoupling model introduces F... score Loss function adjustment, For the smoothness index F score Animation behavior identifier A in reduced data pairs id Reduce its base weight W in the probability map. base .