Display pacing in the configuration of bull head mounted displays virtual reality

文档序号:1760677 发布日期:2019-11-29 浏览:10次 中文

阅读说明:本技术 多头戴式显示器虚拟现实配置中的显示调步 (Display pacing in the configuration of bull head mounted displays virtual reality ) 是由 盖纳迪·里盖 于 2018-04-19 设计创作,主要内容包括:公开了各种虚拟现实计算系统和方法。在一方面,提供一种将视频帧数据递送到多个VR显示器(HMD1、HMD2)的方法。所述方法包括生成用于多个VR显示器的内容以及感测所述多个VR显示器对具有实时要求的资源的竞争需要。如果感测到对具有实时要求的资源的竞争需要,那么确定用于所述多个VR显示器的刷新的所选择刷新偏移量以避免所述多个VR显示器对资源的所述竞争需要之间的冲突。施加所选择刷新偏移量,并且将所述内容递送到所述多个VR显示器。(Disclose various virtual reality computing systems and method.On the one hand, a kind of method that video requency frame data is delivered to multiple VR displays (HMD1, HMD2) is provided.The method includes generating the content for multiple VR displays and sense the multiple VR display to the Competitive Needs of the resource with requirement of real time.If sensing the Competitive Needs to the resource with requirement of real time, then it is determined that the selected refreshing offset of the refreshing for the multiple VR display is to avoid the multiple VR display to the conflict between the Competitive Needs of resource.Apply it is selected refresh offset, and by the content delivery to the multiple VR display.)

1. a kind of method that video requency frame data is delivered to multiple VR displays (HMD1, HMD2) comprising:

Generate the content for being used for multiple VR displays;

The multiple VR display is sensed to the Competitive Needs of the resource with requirement of real time;

If sensing the Competitive Needs to the resource with requirement of real time, then it is determined that being used for the brush of the multiple VR display New selected refreshing offset is to avoid the multiple VR display to the conflict between the Competitive Needs of resource;

Apply selected refreshing offset;And

By the content delivery to the multiple VR display.

2. the method as described in claim 1, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

3. the method as described in claim 1, wherein the multiple display supports dynamic refresh, which comprises if The Competitive Needs to the resource with requirement of real time are sensed, then also determining the institute of the refreshing for the multiple VR display Select dynamic refresh rate to help to avoid the Competitive Needs to resource generated by the multiple VR;And selected by applying Refresh offset and selected dynamic refresh rate.

4. method as claimed in claim 3, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

5. the method as described in claim 1, wherein the generation content is executed by single GPU.

6. the method as described in claim 1, wherein described generate for the content of multiple VR displays includes: to use GPU is generated for one content in the multiple VR display;And it generates or delivers using another GPU and be used for Another the content in the multiple VR display.

7. method as claimed in claim 6, wherein the GPU is configured as main equipment, and another described GPU is configured For from equipment, so that selected refreshing offset of the main equipment control by the frame for generating or delivering from GPU.

8. a kind of method that video requency frame data is delivered to multiple VR displays (HMD1, HMD2) comprising:

The first application program (APP 1) on computing device (15) is run to generate the content for being used for multiple VR displays;

Using the second application program (APP 2) sensing to the Competitive Needs of the resource with requirement of real time;

If sensing the Competitive Needs to the resource with requirement of real time, use is determined using second application program In the multiple VR display refreshing selected refreshing offset to avoid the multiple VR display to described in resource Conflict between Competitive Needs;

Apply selected refreshing offset;And

By the content delivery to the multiple VR display.

9. method according to claim 8, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

10. method according to claim 8, wherein the multiple display supports dynamic refresh, which comprises if Sense movement, then also determine for the multiple VR display refreshing selected dynamic refresh rate with help to avoid by The contention requests to resource generated caused by the movement by the multiple VR display;And apply selected brush New offset and selected dynamic refresh rate.

11. method as claimed in claim 10, wherein the resource includes based on rendering and asynchronous time distortion is requested It calculates.

12. the method as described in claim 1, wherein the application program is run by single GPU (35).

13. method according to claim 8, wherein described generate for the content of multiple VR displays includes: to use GPU (35) is generated for one content in the multiple VR display;And using another GPU (85) generate or Delivering is for another the content in the multiple VR display.

14. method as claimed in claim 13, wherein the GPU is configured as main equipment, and another described GPU is matched It is set to from equipment, so that selected refreshing offset of the main equipment control by the frame for generating or delivering from GPU.

15. a kind of virtual reality computing system (10) comprising:

Computing device (15);

Processor (30,35), the processor (30,35) be operable to execute instruction with: generate for multiple VR displays The content of (HMD1, HMD2);The multiple VR display is sensed to the Competitive Needs of the resource with requirement of real time;If sensing To the Competitive Needs to the resource with requirement of real time, then it is determined that the selected brush of the refreshing for the multiple VR display New offset is to avoid the multiple VR display to the conflict between the contention requests of resource;Apply selected refresh partially Shifting amount;And by the content delivery to the multiple VR display.

16. virtual reality computing system as claimed in claim 15 comprising the multiple VR display.

17. virtual reality computing system as claimed in claim 15, wherein the processor includes CPU, GPU or combination CPU and GPU.

18. virtual reality computing system as claimed in claim 15, wherein the computing device includes another processor (85), wherein the processor is generated for one content in the multiple VR display, and it is described another Processor generates or delivering is for another the content in the multiple VR display.

19. virtual reality computing system as claimed in claim 18, wherein the processor is configured to main equipment, and institute It states another processor to be configured as from equipment, so that main equipment control is by the frame for generating or delivering from processor Selected refreshing offset.

20. virtual reality computing system as claimed in claim 15, wherein the multiple display supports dynamic refresh, it is described Processor is operable to: if sensing the Competitive Needs to the resource with requirement of real time, also being determined for described more The selected dynamic refresh rate of the refreshing of a VR display is to help to avoid the competition of the multiple VR display to resource Conflict between needing, and apply selected refresh and deviate and selected dynamic refresh rate.

Background technique

Virtual reality (VR) system utilizes the head-mounted display (HMD) with illumination screen, and the illumination screen is to pendant Wearer shows the virtual world of computer generation.With each movement of user's head, HMD changes display and is changed with showing to user The landscape of change.When running application program (such as game), VR computer must not only render the video generated by application program Frame, and consider the movement of user's head.Regardless of whether VR computer must be close to handle frame in real time there are head movement, To avoid the shake generated in picture delay, and user will check figure after one second of only one second or even several points Picture.Shake may be very unhappy and causes nausea.

Detailed description of the invention

After reading described in detail below and reference attached drawing, foregoing and other advantage of the invention be will be apparent, In In attached drawing:

Fig. 1 is the schematic diagram of exemplary VR computing system;

Fig. 2 depicts the conventional exemplary timing diagram in multiple VR display refreshing periods;

Fig. 3 depicts the exemplary timing diagram in multiple VR display refreshing periods of exemplary variation;

Fig. 4 depicts the exemplary timing diagram in multiple VR display refreshing periods of another exemplary variation;

Fig. 5 is analogous to the schematic diagram of Fig. 1, but depicts alternative exemplary VR computing system;

Fig. 6 is described for frame to be delivered to one or more VR displays with or without the use of selected refreshing offset Exemplary process flow flow chart;And

Fig. 7 is described for frame to be delivered to showing for multiple VR displays using selected refreshing offset and dynamic refresh The flow chart of example property process flow.

Specific embodiment

VR system is executed dependent near real-time to provide the ability of good user experience.As described above, single HMD drives The simple situation of dynamic system representation.When multiple HMD are connected to computer system, complexity be will increase.Conventional VR HMD exists It is operated on set time line usually relevant to display refresh rate.Vertical synchronization or Vsync are a kind of control buffer area overturnings The method of the problem of to avoid frame tearing, in frame tearing, display shows the part of two rendering frames with different content. When enabling Vsync, each buffer area overturning can only occur after each refresh.Frame rendering rate is effectively limited in by this HMD refresh rate.

Some VR systems providers introduce a kind of technology for being known as asynchronous time distortion (ATW), to help to mitigate lost frames Influence to VR HMD.Based on the opposing headers movement occurred after the last position VR HMD is sent to game, use The system of ATW makes the image shift on VR HMD in the case where the input not from game engine.Doing so can be to user More accurate image is presented.ATW moves entire frame as a whole, so that the entire frame be made to be based only upon user's head rotation Relative changes and shift.The development of update is so-called asynchronous space distortion (ASW).System with ASW attempts by swimming New frame is generated when play is run with the frame rate lower than refresh rate makes scene to be inserted between " true " frame from game engine Interior object and movement displacement.

ATW is executed with the minimum delay of the front with the interval Vsync.Similarly, in central processing unit (CPU) and figure Vsync pacing of the other parts that the frame executed in processing unit (GPU) the two generates relative to HMD.This is suitable for having single The system of a HMD.When being attached multiple HMD, even if system (for example, CPU and GPU) has enough gross horse powers, due to across more A HMD contention real time critical resource (for example, the calculating for being used for ATW), it is also possible to insecure operation occur.In the presence of for synchronizing Show the conventional solution handled and exported, such as genlocing and frame lock, but there is no with multiple VR for wearing Predictable mode needed for formula device carries out the solution of pacing to display operation.

According to an aspect of the present invention, a kind of method that video requency frame data is delivered to multiple VR displays is provided.Institute The method of stating includes generating content and the multiple VR display of sensing for multiple VR displays to requirement of real time The Competitive Needs of resource.If sensing the Competitive Needs to the resource with requirement of real time, then it is determined that for the multiple The selected refreshing offset of the refreshing of VR display to avoid the multiple VR display to the Competitive Needs of resource it Between conflict.Apply it is selected refresh offset, and by the content delivery to the multiple VR display.

The method, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

The method, wherein the multiple display supports dynamic refresh, and if including: to sense to real-time It is required that resource Competitive Needs, then also determine for the multiple VR display refreshing selected dynamic refresh rate with Help to avoid the Competitive Needs to resource generated by the multiple VR;And apply the selected offset and selected of refreshing Select dynamic refresh rate.

The method, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

The method, wherein the generation content is executed by single GPU.

Method as claimed in claim, wherein described generate for the content of multiple VR displays includes: to use GPU is generated for one content in the multiple VR display;And it generates or delivers using another GPU and be used for Another the content in the multiple VR display.

The method, wherein the GPU is configured as main equipment, and another described GPU is configured as making from equipment The main equipment control is obtained by the selected refreshing offset of the frame for generating or delivering from GPU.

According to another aspect of the present invention, a kind of method that video requency frame data is delivered to multiple VR displays is provided. The method includes the first application programs on operation computing device to generate content and the use for multiple VR displays Second application program senses the multiple VR display to the Competitive Needs of the resource with requirement of real time.If sensed to tool There are the Competitive Needs of the resource of requirement of real time, then being determined using second application program for the multiple VR display Refreshing selected refreshing offset to avoid the multiple VR display to the conflict between the Competitive Needs of resource.Apply Selected refreshing offset, and by the content delivery to the multiple VR display.

The method, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

The method, wherein the multiple display supports dynamic refresh, which comprises if sensing movement, So also determine the selected dynamic refresh rate of the refreshing for the multiple VR display to help to avoid due to the movement Caused by by the multiple VR display generate the contention requests to resource;And apply it is selected refresh offset and Selected dynamic refresh rate.

The method, wherein the resource includes the calculating for rendering and asynchronous time distortion is requested.

The method, wherein the application program is run by single GPU.

The method, wherein described generate for the content of multiple VR displays includes: to be generated using GPU for institute State one content in multiple VR displays;And it is generated or is delivered using another GPU and is aobvious for the multiple VR Show the content of another in device.

The method, wherein the GPU is configured as main equipment, and another described GPU is configured as making from equipment The main equipment control is obtained by the selected refreshing offset of the frame for generating or delivering from GPU.

According to another aspect of the present invention, a kind of virtual reality computing system is provided.The system comprises computing devices And processor.The processor be operable to execute instruction with: generate the content for being used for multiple VR displays;It senses the multiple Competitive Needs of the VR display to the resource with requirement of real time;If sensing the competition to the resource with requirement of real time needs It wants, then it is determined that the selected refreshing offset of the refreshing for the multiple VR display is to avoid the multiple VR display To the conflict between the Competitive Needs of resource;Apply selected refreshing offset;And by the content delivery described in Multiple VR displays.

The virtual reality computing system comprising the multiple VR display.

The virtual reality computing system, wherein the processor includes CPU, GPU or combined CPU and GPU.

The virtual reality computing system, wherein the computing device includes another processor, wherein the processor It generates for one content in the multiple VR display, and another described processor generates or delivering is used for Another the content in the multiple VR display.

The virtual reality computing system, wherein the processor is configured to main equipment, and another described processing Device is configured as from equipment, so that main equipment control is inclined by the selected refreshing of the frame for generating or delivering from processor Shifting amount.

Wherein the multiple display supports dynamic refresh, the processor that can operate to the virtual reality computing system Come: if sensing the Competitive Needs to the resource with requirement of real time, also determining for the multiple VR display The selected dynamic refresh rate refreshed is to help to avoid the multiple VR display to rushing between the Competitive Needs of resource It is prominent, and apply selected refreshing offset and selected dynamic refresh rate.

Disclose a variety of virtual realities (VR) meter for improving the management of opposite multiple VR head-mounted display delivering video frames Calculation system.Video content is produced for delivery to multiple VR head-mounted displays.VR computer may pass through VR synthesizer Or other applications monitoring is handled that (such as all or part of frame renders or different by the needs that multiple VR displays carry out in real time Walk time warp) competition task.If for example sensed by detecting multiple VR displays and to be needed in real time or near real-time Desired competition task is calculated, then the selected refreshing of application program and system-computed for the refreshing of multiple VR displays is inclined The contention requests to resource that shifting amount generates to avoid multiple VR displays.Apply selected refreshing offset, and will be described Content delivery is to the multiple VR display.Wearing Formula V R display for one can refresh first, and at one second of several points or The one of several points of frame refreshes again later, and to other VR displays and so on for being connected to computing device.Staggeredly keep away The contention requests to the resource (such as those required to asynchronous time distortion and frame rendering part) with requirement of real time are exempted from.It is existing More details will described.

In attached drawing described below, when similar elements appear in more than one attached drawing, drawing reference numeral would generally be weighed It is multiple.Attached drawing is turned now to, and particularly turns to Fig. 1, there is shown with exemplary 10 (hereinafter referred to as systems of VR computing system 10) schematic diagram.System 10 includes computing device 15 and one or more head-mounted displays, in the head-mounted display Two are depicted and are labeled as respectively HMD1 and HMD2, and wherein HMD represents head-mounted display.As needed, in computing device Connection 20 and 25 between 15 and HMD1 and HMD2 can be wired or wireless connection.Computing device 15 may include processor or CPU 30, GPU 35, system storage 38 and storage device 40.CPU 30 and GPU 35 can be general discrete device or can be all Such as it is integrated into single device by acceleration processing unit.Optionally, the function of CPU 30 and GPU 35 can be by one or more Specific integrated circuit executes.System storage can be the flash memory combination of RAM, ROM, these or other kinds of memory.It deposits Storage device 40 is non-volatile computer-readable medium, and can be any kind of hard disk, optical memory disc, solid-state storage dress It sets, ROM, RAM or the substantially any other systems for storing computer-readable medium.Storage device 40 is operable to storage and uses In the non-transitory computer-readable instruction for executing various respective functions disclosed herein.

Computing device 15 may include multiple application programs, and the application program is abbreviated as APP 1, APP 2 ... APP N, And it can be driver, software application or other kinds of application program.In addition, computing device 15 may include operation System 45 and video driver 50.Operating system 45 and video driver 50 and application APP 1, APP2 ... APP N is storable on storage device 40 and is selectively loaded into system storage 38.It can be used The operating system software etc. of Linux or more type.(example in application APP 1 ... APP n Such as, APP 1) it can be the application program for generating the content (such as game or other programs) that be shown on HMD1 and HMD2, And another application program (such as APP 2) can be by video driver 50 control content how to be shown in HMD1 and The VR synthesizer of aspect on HMD2.Video driver 50 may include the code for realizing Vsync or vertical synchronization. Vsync is designed to avoid the phenomenon that referred to as " tearing ", and in " tearing " phenomenon, display shows two with different content Render the part of frame.When enabling Vsync, each buffer area overturning can only occur after each refresh.

Application APP 1 and/or application APP 2 can reside on storage device 40, and select during execution It loads to selecting property in system storage 38.Application APP 2 is operable to provide the display for driving HMD1 and HMD2 The Timing Synchronization of device and will be for the refresh interval selectively deflection of multiple VR displays of HMD1 and HMD2.Technical goal It is to provide certain selected offset of the refresh timing between HMD1 and HMD2 to avoid real-time working load (such as frame rendering With asynchronous time distortion (ATW) request) overlapping.The operating aspect of system 10 will be described in conjunction with Fig. 3.However, turn to Fig. 3 it Before, consider that the regular frame rendering in more HMD systems will be useful.Describe such regular frame rendering in Fig. 2, Fig. 2 shows Corresponding refresh timing Figure 60 of refresh timing Figure 55 and HMD2 of HMD1.For each of timing diagram 55 and 60, describe Several refresh points, that is, refresh 1, refresh 2, refresh 3 and refresh 4, and assume HMD1 and HMD2 constant brush all having the same New rate, that is, refresh 1 and refresh 2 between and refresh 2 and refresh 3 between etc. the suchlike period inverse.Refresh timing Figure 55 shows the timing activity of " hardware queue " and " being shown on HMD1 ", and wherein hardware queue is related to the rendering of the frame of HMD1 Hardware (for example, GPU, APU or other) activity of connection, and be shown on HMD1 to show and cause rendering content is practical to be apparent in Activity on HMD1.As shown in figure 55, after refreshing 1 but at the certain point before refreshing 2, the frame rendering of HMD1 is executed (being abbreviated as " rendering 1 "), and the content just rendered before refreshing 1 is shown on HMD1, it is abbreviated as " being sent to HMD1 ". Refresh timing shows the timing activity that associated hardware queue is rendered with the frame of HMD2, and " being shown on HMD2 " shows and lead Cause the practical activity being apparent on HMD2 of rendering content.As shown in figure 60, the certain point after refreshing 1 but before refreshing 2 Place, executes the frame rendering (being abbreviated as " rendering 2 ") of HMD2, and the content just rendered before refreshing 1 is shown on HMD2, It is abbreviated as " being sent to HMD2 ".It is assumed herein that rendering 2 is after refreshing 1 quickly in time t0Place starts, and renders 1 and rendering 2 complete later immediately and sequentially in time t1Place starts.It now fast forwards through and just refreshes after 2.Such as refresh timing Figure 55 It is shown, from time t1The content that the rendering 1 that place starts operates is time t2It completes to be eventually displayed in when being sent to HMD1 in place On HMD1.Pay attention in time t1Locate the rendering 1 started and in time t2The delay being sent between HMD1 that place carries out (is labeled as " delay HMD1 ").Now consider the timing diagram 60 just after refreshing 2.From in time t0The rendering 2 that place starts operates interior Appearance is time t2It completes to be eventually displayed on HMD2 when being sent to HMD2 in place.It is noted that in time t0Locate start rendering 2 with In time t2The delay of place's progress being sent between HMD2 (labeled as " delay HMD2 ").Rendering 2 and rendering 1 for refresh 1 and The processing that refreshes between 2 and compete, and therefore must interlock in time.This means that must be in refreshing 1 to 2 times of refreshing The earlier executed rendering 2 of section, and this causes to postpone HMD2 > delay HMD1 and may postpone HMD2 long enough to HDM2's User causes to shake.

Fig. 3 is now directed attention to, the operation of example improvement is shown, and is particularly shown the refresh timing of HMD1 Corresponding refresh timing Figure 70 of Figure 65 and HMD2.For each of timing diagram 65 and 70, several refresh points are depicted, That is, refreshing 1, refreshing 2, refresh 3 and refreshing 4.The refresh rate R of HMD1HMD1By 1/THMD1It provides, wherein THMD1It is Figure 65 of HMD1 In refreshing 1 and refresh 2 between and refresh 2 and refresh 3 between etc. the suchlike period.The refresh rate R of HMD2HMD2By 1/THMD2It provides, wherein THMD2It is refreshing 1 in Figure 60 of HMD2 and refreshes between 2 and refresh 2 and refresh between 3 etc. such as Such period.Refresh rate RHMD1And RHMD2Can be identical or different, and can be in 15 energy of HMD1 and HMD2 and computing device It is dynamically adjusted in the case that enough there is dynamic refresh rate.Refresh timing Figure 65 shows " hardware queue " and " being shown on HMD1 " Timing activity, wherein hardware queue is that hardware associated with the rendering of the frame of HMD1 (for example, GPU, APU or other) is living It is dynamic, and be shown in show on HMD1 and lead to the practical activity being apparent on HMD1 of rendering content.As shown in Figure 65, refreshing 1 Later but refresh 2 before t4Place, starts the frame rendering (being abbreviated as " rendering 1 ") of HMD1, and shows just on HMD1 The content rendered before refreshing 1, is abbreviated as " being sent to HMD1 ".It may be noted that time t4It is selected such that rendering 1 close Completion when refreshing 2.After now fast forwarding through the just refreshing 2 in Figure 65.As shown in refresh timing Figure 65, from time t4 The content that the rendering 1 that place starts operates is time t5It completes to be eventually displayed on HMD1 when being sent to HMD1 in place.Pay attention to when Between t4Locate the rendering 1 started and in time t5The delay of place's progress being sent between HMD1 (labeled as " delay HMD1 ").Now examine Worry is timed refresh timing Figure 70.The timing that refresh timing Figure 70 shows " hardware queue " and " being shown on HMD2 " is living Dynamic, wherein hardware queue is that hardware associated with the rendering of the frame of HMD2 (for example, GPU, APU or other) is movable, and shows Show to show on HMD2 and leads to the practical activity being apparent on HMD2 of rendering content.But it may be noted that in refresh timing Figure 70 The refreshing 1 (in other words, the refreshing 1 of HMD2) of hardware queue exists relative to the refreshing 1 of HMD1 shown in refresh timing Figure 65 Certain selected refreshing offset is deviated on time.As shown in Figure 70, the t after refreshing 1 but before refreshing 26Place starts The frame rendering (being abbreviated as " rendering 2 ") of HMD2, and the content just rendered before refreshing 1 is shown on HMD2, it is abbreviated as " being sent to HMD2 ".It may be noted that time t6It is selected such that completion when close to refreshing 2 of rendering 2.Now fast forward through Figure 70 In just refreshing 2 after.As shown in refresh timing Figure 70, from time t6The content that the rendering 2 that place starts operates is Time t7It completes to be eventually displayed on HMD2 when being sent to HMD2 in place.Pay attention in time t6Locate the rendering 1 started and in time t7Place The delay being sent between HMD2 carried out (labeled as " delay HMD2 ").It, can be close to HMD1 by using offset is refreshed Refreshing 2 when complete rendering 1, and can be completed when close to the refreshing 2 of HMD2 rendering 2, this cause delay HMD1 be equal to or connect Nearly delay HMD2 and delay HMD2 are shorter than the delay HMD2 for routine techniques shown in Fig. 2.

It, can one (for example, up to half) or some other software controls based on several points of frame referring still to Fig. 3 Interval (1 millisecond to 2 milliseconds etc.) come select refresh offset.The selected purpose for refreshing offset is to make to have real The HMD1 task and HMD2 task of Shi Yaoqiu (such as ATW request and/or the rendering of all or part of frame) is temporally spaced. It should be appreciated that in the case where HMD1 and HMD2 and computing device 15 support dynamic refresh rate, refresh rate RHMD1And RHMD2Not only It can be different but also can rapidly fluctuate.

The some exemplary selections that will now Fig. 1 and Fig. 3 description be combined to refresh offset.A kind of example technique is related to maximum Refresh the strength selection of offset.For example, the maximum refreshing offset with the score wording of frame will be by being connected to computing device 15 The inverse of quantity of head-mounted display provide.Thus, for example, the case where HMD1 and HMD2 are connected to computing device 15 Under, it will be the 1/2 of frame with the maximum offset that refreshes of frame wording.If there is three HMD, then the maximum offset that refreshes will be The 1/3 of frame, and for four HMD, it will be 1/4 that maximum, which refreshes offset, and so on.One or more refreshes offset Selection and application can be executed by VR synthesizer (APP 2 in such as these examples).When computing device 15 is by APP 2 or with it His mode senses when connecting or disconnecting of HMD, can adjust refreshing offset upward or downward.

For selecting another example technique for refreshing offset to be related to dynamic select.Here, when content generates application When program APP 1 is being HMD1 and HMD2 generates frame, VR synthesizer (APP 2) can determine the time that mutually exclusive operation will be spent, And then instruction video driver 50 should be which type of refreshes offset permission in the real-time task of no any competition Mutually exclusive operation is executed in the case where (such as ATW request or frame rendering overlapping).And then refresh (for example, refreshing 1 of HMD1) it Afterwards, VR synthesizer (APP 2) is by the tracking data of poll HMD1 and HMD2, and thus senses the movement of HMD1 and HMD2, and Also any other the incoming task of sensing with requirement of real time.Using the data of grasp, APP 2 will then determine that ATW is asked Summation renders the time that will be spent to the mobile frame carried out of HMD1 using ATW correction, and then indicates video driver 50 It should be the shifting for the HMD (such as HMD2) which type of refreshes that offset makes the rendering of the movement to HMD1 not will receive and compete Move the constraint of associated ATW request.APP 2 can indicate that video driver 50 includes safety margin, that is to say, that make to refresh Offset is slightly larger than necessary amount.Under in a flash, it may occur however that other of HMD1 and HMD2 movement, this can prompt APP 2 right Readjust refreshing offset with answering.This process that dynamic adjustment refreshes offset can be according to the mobile repetition of HMD1 and HMD2 Occur.Certainly, the technology can with use for example by advanced micro devices Co., Ltd (Advanced Micro Devices, Inc.) the dynamic refresh close fit to all HMD (such as HMD1 and HMD2) for the Freesync technology supplied.

Certain VR settings may relate to the HMD with different refresh rates.In these cases, APP 2 still can apply brush New offset is so that calculating task is spaced apart in real time.Now direct attention to Fig. 4, which depict refresh timing Figure 75 of HMD1 and Corresponding refresh timing Figure 80 of HMD2.Fig. 4 is similar to Fig. 3, and therefore describes for each of timing diagram 75 and 80 Several refresh points (refresh 1, refresh 2, refreshing 3 and refresh 4), hardware queue and it is shown in trace on HMD1 or HMD2.But It may be noted that (defining as described above) refresh rate of HMD1 and HMD2 is different.In the case where any compensation is not present, tool There are the HMD1 and HMD2 of different refresh rates that will generate irregular " beat frequency " pattern, the brush of plurality of HMD (HMD1 and HMD2) Interval between new becomes much larger and smaller and finally collide.However, here, APP 2 (as VR synthesizer, referring to It can Fig. 1) apply and refresh offset to attempt the refreshing 2 of the refreshing 1 of HMD1 and the refreshing 1 of HMD2, the refreshing 2 of HMD1 and HMD2 Etc. be spaced apart so that they will not collide.Also other can be used and refreshes offset method.If can not be avoided that with Multiple HMD (HMD1 and HMD2) occur in the case where refreshing collision, or collision are being not present but the refreshing from different HMD In the case that label is got too close to each other, produce feedback to give a warning to APP 2: it needs to consider due to possible work Load impact and caused by possible delay increase.

It is envisaged for the more GPU modifications being used together with multiple VR HMD.In this regard, figure is now directed attention to 5, Fig. 5 be the block diagram for describing the alternative exemplary modification of computing system 10 '.This computing system modification 10 ' is shared retouches in Fig. 1 It draws and in many attributes of computing system 10 described elsewhere herein.For example, may be present multiple VR display HMD1 and HMD2, and these displays can carry out the number more than two as needed.In addition, computing device 15 ' may include GPU 35, be System memory 38, storage device 40, the OS 45 with Vsync, multiple application APPs 1 to APP N and video driver 50.In addition, HMD1 and HMD2 can be connected to computing device 15 ' by aforementioned connection 20 and 25.However, here, in addition to GPU 35 Except, computing device 15 ' may include one or more other GPU, one of those is depicted and is labeled as 85.It should manage Solution, can realize more than two GPU 35 and 85 as needed.Both GPU 35 and 85 can be with storage device 40 and system storage 38 connect with operation connection and with mutual operation is arrived.APP 2 (is being configured as VR as described elsewhere herein In the case where synthesizer) it may include for executing the instruction rendered to HMD1 and HMD2 respectively.For example, GPU 35 can be designated as HMD1 rendering content, and GPU 85 can be designated as another VR display HMD2 rendering content.May expect will be in GPU One (for example, GPU 35) is appointed as main equipment, and other one or more GPU 85 is appointed as from equipment, for refreshing The Timing Synchronization and deflection of rate and refresh point.In the case where GPU 35 and GPU 85 has same capabilities, or more generally, It in a GPU (such as GPU 35) is the stronger integrated circuit of ability (such as card on discrete GPU) and another GPU 85 is Such as in integrated graphics chip ability it is weaker but still work GPU in the case where, the differentiation of this task can be performed (that is, main Equipment and from equipment).The Timing Synchronization of description and the same type in refresh interval described elsewhere herein such as in Fig. 3 It can be used together with the more GPU modifications described in Fig. 5 with selective deflection.However, here, main GPU 35 can be assigned by from GPU 85 and it can be coupled to any other in computing device 15 from the refresh interval of GPU selectively deflection.Also it can be used Other granularity level.The differentiation of other tasks is possible.For example, the stronger GPU 35 of ability can be used for the tool of HMD1 and HMD2 There is a task of requirement of real time, and the weaker GPU 85 of ability can be used for requiring lower task, such as driving HMD2.Another In kind modification, secondary GPU 85 can also be used for some renderings.With other disclosed in as modification, such as Freesync can be used Or in which the other technologies of the dynamic refresh of display HMD1 and HMD2 are provided and realize dynamic refresh.

Several exemplary process flows are shown to graphically in figure 6 and figure 7.Fig. 6, which is depicted in, does not enable dynamic brush Exemplary process flow under news, and the Fig. 7 being discussed below is depicted in showing in the case where enabling dynamic refresh Example property process flow.Fig. 6, which is depicted, can be two asynchronous parallel processing loops 100 and 102.The disposition pair of processing cycle 100 The sensing that competitive resource is requested and selection and application to selected refreshing offset.Therefore, at step 105, from Fig. 1 institute The addition of computing device 15 shown or removal HMD.At step 110, application program is (for example, be embodied as VR synthesizer or similar function The APP 2 of energy property) multiple VR displays are sensed to the Competitive Needs of real time resources.This, which needs to sense, is connected to computing device 15 The quantity of VR display (HMD1, HMD2 etc.).The VR display individually detected will not be generated to the competing of real time resources Needs are striven, but two or more VR displays detected will generate the Competitive Needs to real time resources.If in step One or more VR displays are sensed at rapid 115 to the Competitive Needs of real time resources, then process flow advances to step 120, and APP 2 determines (or multiple) refreshing offset appropriate to avoid the need for the conflict to real time resources. This determination by consider detect competition VR display (HMD1, HMD2 etc.) quantity --- the VR display of addition need to More to refresh offset, and the VR display removed will need less refreshing offset.Then at step 125, APP 2 applies one (or multiple) and refreshes offset to avoid the conflict of the needs to real time resources, and then process is advanced Circulation to step 130 place exits.However, if not sensing at step 115 to the real-time of one or more VR displays The Competitive Needs of resource, then process flow skips to exiting for step 130 place.Whenever VR display connects or disconnects, will touch Hair circulation.Content generates circulation 102 and advances parallel.Therefore, after the beginning at step 135, at step 140, APP 1 is raw At the content for being used for multiple VR displays (HMD1, HMD2 etc.).Step 145 be use process circulation 100 step 120 and The condition of 125 result.If not applying one or more offsets that refresh at step 145 (if such as will be only The case where detecting a VR display), then circulation 102 advances to step 150 in the case where no refreshing offset Frame is rendered, then continues to step 155 so that the frame of rendering is delivered to single VR display, and then return to step 140. However, if applying one or more offsets that refresh at step 145 (detects multiple VR displays if such as will be The case where), then circulation skips to step 160 and renders frame in the case where having one (or multiple) refreshing offset, it After be step 150, wherein the frame of rendering is delivered to multiple VR displays (HMD1, HMD2 etc.).Then 102 circulation of circulation Return to step 140.

In alternative exemplary modification, process flow can pass through Freesync or the dynamic refresh journey of some other types Sequence uses dynamic refresh.Referring now to Fig. 5, after the beginning at step 200, at step 205, dynamic refresh is enabled.In step At rapid 210, application program (such as APP 1) generates the content for being used for multiple VR displays (such as display HMD1 and HMD2). Then, at step 215, application APP 2 senses multiple VR displays to the Competitive Needs of real time resources.For example, and As described above, the Competitive Needs that APP 2 renders the ATW request for sensing such as HMD1 and HMD2 and all or part of frame. If not detecting Competitive Needs at step 220, then process flow advances to step 225 and renders frame, and so Afterwards at step 230, the frame of rendering is delivered to multiple VR displays.Step 210 is back to after step 230.However, if At step 220, application APP 2 senses multiple VR displays in one or more VR displays to real time resources Competitive Needs, then process advances to step 235, wherein APP 2, which is determined, refreshes offset and dynamic refresh rate to avoid to reality The conflict of the Competitive Needs of Shi Ziyuan.Then at step 230, APP 2 applies selected refreshing offset and dynamic refresh rate To avoid the conflict of the needs to real time resources, and hereafter at step 245, selected refreshing offset and selected is utilized Dynamic refresh rate renders frame.Then, process flow is branched off into step 230, and the frame of rendering is delivered to multiple VR and is shown Device.Certainly, the process flow in Fig. 6 and Fig. 7 can be completed with one or more application program and operating system etc..In other words It says, Integrated Simulation and the hardware of various ranks can be used to realize described step.

Although the present invention can readily generate various modifications and alternative form, specific modification passes through act in the accompanying drawings The mode of example shows and has described in detail herein.It will be appreciated, however, that the present invention be not intended to be limited to it is disclosed Particular form.On the contrary, the present invention covers in the spirit and scope of the present invention fallen into as defined by the following appended claims All modifications, equivalent and alternative solution.

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于生成以及编码具有以封包于分段球体投影布局中的投影面表示的360度内容的基于投影帧的方法以及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类