Changelog History
Page 2
-
v0.9.0 Changes
February 07, 2019๐ Performance improvements, WebXR support, Inspector updates!
โ We continued to battle test A-Frame to produce native-like VR experiences and
๐ continue to add large performance gains. We have also introduced initial WebXR
๐ support! Although the spec is heavily in flux and yet to have feature parity
โ with WebVR 1.1, we had A-Frame get a head start to help test it out and smooth
out the changes.Major Changes
- โฌ๏ธ Bump to three.js r101 on a branch with a few extra patches for WebXR support (f9f314).
- ๐ WebXR support (#3875).
- โ Remove
<a-animation>
in favor of new animation component (#3678). - โ Remove
collada-model
component (#3866). - โ Add
renderer.colorManagement
property (disabled by default) to accurately match colors against modeling tools, but may changes in scene colors when flipped on.renderer.gammaFactor
will be set to 2.2. Callscene.renderer.systems.applyColorCorrection
onTHREE.Color
s andTHREE.Texture
s to normalize changes (#3757). - ๐ Have raycasters only intersect against objects defined via
.setObject3D
.raycaster.objects
should be specified (e.g.,objects: [data-raycastable] or objects: .raycastable
) because raycasting is expensive.raycaster.recursive
property removed (#3980) but will default to be recursive only under objects defined via.setObject3D
(#3652). - โ Add
renderer
component (#3757). - ๐
antialias
attribute moved torenderer.antialias
. - Raycaster events such as
raycaster-intersected
no longer directly contain intersection data. Use.getIntersection
function supplied in event detail orel.components.raycaster.getIntersection(el)
to retrieve intersection data. Done to reduce garbage (a87e3b). - 0๏ธโฃ Disable link portal appearance by default (
link.visualAspectEnabled
), link component defaults to purely to listening to an event to trigger navigation (#3743).
๐ Fixes
- Frame-independent easing for
wasd-controls
to prevent judders during framedrops (#3830). - โก๏ธ Enable matrix auto updates for
tracked-controls
to fix children of camera and controllers not following parent (#3867). - ๐ Fix removing mixins not removing components (#3982).
- ๐ Fix timing issues with mixins on still-initializing entities (#3859).
- setPoseTarget to underlying object3D to fix issues with entities as child of camera (#3820).
- โก๏ธ Don't disable
matrixAutoUpdate
for tracked-controls outside VR (643fdc). - Render spectator view after VR submit frame (#3577).
- ๐ Fix mouse cursor events not being re-enabled on resume (#3904).
- ๐ Allow components to write to camera Z rotation when look-controls enabled (9a78a)
- Clear raycaster intersections when toggling disabled (#3594).
- Postpone renderer until scene is appended to DOM (#3574).
- ๐ Fix canvas textures (b47f20).
- ๐ Fix faces and vertices numbers on stats panel (#3573).
- ๐ Fix magic window mode on Chrome (aaa3bf).
- ๐ Fix audio asset preloading (2a899c).
- ๐ Fix raycaster flatten to only include objects part of
el.object3DMap
versus arbitrary children (8809e7). - ๐ Fix canvas getting squished on orientation change on mobile (64ed3d).
- โก๏ธ Update position, rotation, scale components when calling
.setAttribute
on them (#3738). - โก๏ธ Update canvas bounds for mouse cursor on renderer resize (a4cf08).
- ๐ Fix controller reconnecting on Oculus Go and GearVR (dc8662).
- ๐ Fix playing sound on event with
sound.on
(#3844). - ๐ Fix Chrome WebView (#3852).
- ๐ Fix raycaster not grabbing all entities when
raycaster.objects
is not set. But you should always set it (#3840). - ๐ Fix WebVR polyfill buffer scale override (#3863).
- ๐ Fix text when used with other geometry types (#3909).
- ๐ Fix
daydream-controls
trigger not working with cursor by default (#3916). - ๐ Fix accessing Inspector in pointer lock mode (#3947).
- ๐ Fix mouse cursor not emitting click when fuse is set (#4000).
- ๐ Fix screenshots (#3998).
- ๐ Fix camera offset getting applied when entering 2D fullscreen (#3902).
โจ Enhancements
- โ Add
oculus-go-controls
, thanks Oculus! (cbbe75) - โ Add
vive-focus-controls
(#3876). - โ Add
loading-screen
component (#3760). - โ Add
?inspector={selector}
andEntity.inspect()
to automatically launch Inspector and focus on entity (#3894). - โ Add
renderer.highRefreshRate
to enable 72hz mode on Oculus Browser (#3967). - โ Add
tracked-controls.autoHide
property to configure whether controllers automatically hide when connected or disconnected (#3912). - Enable multiple raycasters on an entity (fc18cd).
- ๐ Support custom enter VR buttons through vr-mode-ui (#3606).
- โ Add
material.blending
property (#3543). - โ Add
light.shadowRadius
property (21b38). - โ Add ability to cap canvas size to pixel value (92b2f9).
- โฌ๏ธ Reduce npm bundle (53f58f).
- Allow double underscores in component IDs (e.g.,
animation __foo__ bar
) (030023). - โ Add
renderer.logarithmicDepthBuffer
option (d210a2). - โ Add
look-controls.reverseTouchDrag
property (#3761). - Switch to jsdelivr with rawgit going away.
- ๐ Support preprocessing of sound in
sound.playSound()
(2b2819). - ๐
Consolidate fullscreen styles under single CSS class (
html.a-fullscreen
) (#3828). - Emit
displayconnected
event when headset connected (#3918). - 0๏ธโฃ Enable antialias by default on Oculus Go (#3942).
- โก๏ธ Update to webvr-polyfill v0.10.10 (#3993).
๐ Performance
- ๐จ Large refactor of core component update path, reducing memory allocation and using object pooling (#3772).
- โก๏ธ Skip
buildData
if updating component directly. 2x speed boost on.setAttribute
(#3835). - โ Remove spamming
navigator.getGamepad
calls in tracked-controls (#3816). - โก๏ธ Optimize coordinates / vector utilities (#3908).
- โ Remove object allocation in
.setAttribute(component, propertyName, value)
(#3812). - Simplify text shader hacks and make text alpha look prettier (#3557).
- โ Remove garbage and bubbling from tracked-controls (#3589).
- โ Remove redundant matrix world update in raycaster (ae7eba).
- Replace Oculus OBJ model with a glTF one (#3539).
- โก๏ธ Optimize coordinate parse (bf66ba).
- Simply wasd-controls tick (#3763).
- โก๏ธ Optimize text component (#3768).
- โ Remove memory allocations in material code (#3789).
- โ Remove garbage in sound component (2b2819).
- ๐ Improve grabbing class cursor performance in 2D look-controls (#3790).
- โ Remove unused and redundant mixin observers (#3831).
- โ Add warning to developers to specify
raycaster.objects
(#3839). - Cache asset property type regex (#3854).
Inspector
Kevin spent some time getting the Inspector into ship shape.
Major Changes
- โก๏ธ Introducing the A-Frame Watcher to sync updates of entities with IDs from Inspector to HTML files.
- โ Remove HTML exporter.
- โ Remove old A-Frame Registry code.
- โ Remove broken Uploadcare uploader.
- โ Remove motion capture tools.
โจ Enhancements
- Orthographic cameras.
- ๐ Improve raycasting to picking entities.
- Syntax highlighting of entities.
- Highlight and describe entities on viewport bar when hovering.
- โ Added
?inspector={selector}
to automatically launch Inspector and focus on entity. - ๐ Show bounding box of selected entities.
- ๐ Show with icon what entities contain text in scenegraph.
- Sort component properties alphabetically.
- Display class names on entity panel.
- Only show camera and light helpers when respective entity is selected.
- ๐ Improve position when focusing on entity.
- ๐ Polish components panel.
- Center editor controls to the scene camera position.
- ๐ Support arrow keys for number widgets.
- .glb export.
- โ Add
o
shortcut to toggle transform widget. - โ Add
esc
shortcut to unselect entity. - ๐จ Refactor most everything (modularize, data flow, Stylus, Prettier).
- ๐ Tweak grid colors.
- Bigger checkboxes.
- ๐ Fix color picker in components panel.
- ๐ Fix display of mixins.
๐ Performance
- Don't load 50 images when opening the Inspector.
- โก๏ธ Optimize and fix helpers for position, rotation, scale.
- Speed up scene graph search.
- โ Remove global mutation observer.
-
v0.8.2 Changes
April 15, 2018๐ Bug fixes after 0.8.0 release.
๐ Bug Fixes
- Place touch model to match real physical position of the controller. Apply correctly the pivot offset for Oculus Touch Controls. (#3537)
- โ Remove unused rotationOffset attribute in favor of orientationOffset. (#3537)
- ๐ Use both touchpad and trigger events in laser-controls to fire click events on GearVR. (#3530) (fix #3519) 4879f0601 Fix reverse mouse drag for look-controls. (#3482) (fix #3459)
- ๐ Use most recent intersection from raycaster when entity is intersected. (#3475) (fix #3467, #3485, #3445)
- ๐ Fix minification issues due to ES6 features. Use forEach instead of for...of (#3495) (fix #3449)
- ๐ป Stop click event from propagation in vr-mode-ui. Prevent taps on the screen to propagate to the scene on Cardboard v2. (#3527)
- Init position/rotation/scale first if defined on the entity (#3517) (fix #3516)
- ๐ Change default value of vec4 component property type to match THREE.Vector4 default value.
- ๐ Deprecate antialias component in favor of renderer component. (#3424)
- ๐ Fix post processing. Use scene.onAfterRender() for tock. (#3468)
- ๐ Fix ignored controller events if several button preses happen on same tick. (#3472)
- ๐ Fix animations triggered by state change. (#3470) (fix #3436)
- Delay setting pose target for VRManager until camera is ready to prevent vrdisplayactivate trigger vr mode prematurely. (#3448)
- ๐ Fix video sphere not rendering due to missing back material flag. (fix #3444)
- ๐ Fixes pointerlock mode camera movement jank. (#3434)
๐ Performance
- โ Remove default components to 4 component initializations per entity. (#3490)
- ๐พ Save one array initialization per tick and raycaster. (#3438) (fix #3437)
- โช Use Object3D directly to save/restore pose in look-controls skipping radToDeg. (#3439)
โจ Enhancements
- โ Add component to a-scene to configure renderer. (#3424) (fix #666)
- โ Add component reference to sound-loaded and sound-ended (#3514) (fix #3505)
- ๐ Improve testing coverage for controllers (#3474)
-
v0.8.0 Changes
March 09, 20180.8.0 (March 9, 2018)
๐ Performance improvements.
Major Changes
- โก๏ธ Updated to three.js r90.
- โก๏ธ Ability to update three.js Object3D position, rotation, scale, and visible directly while being in sync with A-Frame. (#3245)
- ๐ Bubble
object3dset
andobject3dremove
events no longer bubble. (#3220) - Raycaster intersection and cleared events now emitted once per event, not on every frame. (#3126)
- โ Remove VREffect / VRControls for three.js WebGLRenderer API. VR camera pose is managed by three.js. (#3152, #3327)
- โ Removed geometry.mergeTo. (#3191)
- โ Removed State mixins.
addState
andremoveState
event detail modified to be the state name, not object. (#3171) - โ Removed Scene.reload() (#2239)
๐ Deprecations
- Entity.getOrCreateObject3D. (#3222)
๐ Fixes
- โก๏ธ Clone object type properties into oldData to fix update method not called on referenced objects. (#3409)
- ๐ Fix matrix composition when updating pose for controllers. (#3407)
- ๐ Fix component update getting overridden by mixin due to not passing in the whole attrValue into buildData. (#3302)
- โ Remove a-canvas z-index. (#3391)
- ๐ Fix parameters passed to the onButtonEvent function for Windows MR. (#3372)
- ๐ Fix black texture issue with a-sky and a-videosphere components with three r89. (#3370)
- ๐ Fix material array handling in shadow component. (#3348)
- Postpone the resize operation in iOS to ensure that the window size matches the viewport on orientation changes. (fix #3282) (#3306)
- ๐ Fix utils.entity.getComponentPropertyPath if defaultLightsEnabled not defined
- Look-controls don't read HMD position if no headset connected. (#3286)
- ๐ Fix raycaster direction. (#3239)
- ๐ Fix raycaster line update that wasn't triggered anymore. (#3124)
- ๐ Fix data from dom not parsed if skipTypeChecking. (#3153)
- 0๏ธโฃ Clone default array property type. (#3095)
- ๐ Fix Gear VR buttons highlighting. (#3103)
- Do not resize the canvas while presenting on mobile (#3080)
- Flipped the sign on sampleUV.x in the portal shader used by the link component (#3079)
โจ Enhancements
- โ Add spectator camera mode and spectator scene component. (#3280)
- ๐ Support Pointer Lock API. (#3341)
- ๐ Allow mixin composition. (#3305)
- โ Add a background component for better performant plain color backgrounds than
<a-sky>
. (#2908) - ๐ Use MutationObserver and object3dset and object3dremove events to refresh raycaster list. (#3070)
- ๐ Allow specify container for pool component. (#3392)
- ๐ฆ Expose raycaster.intersections array. (#3289)
- โ Remove cameraRig on setupDefaultCamera. (#3364)
- โ Add metalnessMap and roughnessMap. (#2722)
- โ Add spectator camera mode to the camera component and spectator scene component. (#3280)
- โ Add transparent flag to be able to define transparent backgrounds. (#3320)
- ๐ Improve function names in debugger call stacks. (#3310)
- ๐ Allow removal of mixed-in components. (#3275)
- โ Add xOffset option to allow text padding. (#3269)
- ๐ Allow disable shadow map auto update, fix shadow system init. (#3214)
- ๐ Use component event handlers insted of bound a-scene methods. (#3213)
- ๐ Support sources in video. (#3176)
- ๐ Make camera system aware of mixins. (#3196)
- โ Remove everGotGamepadEvent flag and gamepadconnected / gamepaddisconnected. (#3189)
- Register cursor event listeners on canvas, not window. (#3179)
- ๐ Do not update style.width and style.height on renderer resize to not override styles applied externally. (#3184)
- Factor out onButtonEvent method from controllers. (#3169)
- โ Add raycaster.enabled property to toggle tick handler. (#3148)
- Have camera call enter VR handler if scene already entered VR with display activate. (#3149)
- String-trim primitive attribute values. (#3145)
- โ Add customizeable colors to link portal and title. (#3106)
- ๐ Adapt cursor onMouseMove to also accept touchmove events. (#3143)
๐ Performance
- ๐พ Save array creations on each raycaster update. (#3317)
- โก๏ธ Optimize event emit. (#3308)
- โก๏ธ Throttle updateControllerList while keeping getGamepads call. (#3112)
- Get rid of some string split operations. (#3316)
- 0๏ธโฃ Default the raycaster interval/throttle to 0. (#3293)
- Have getAttribute(visible) return object3D.visible directly. (#3283)
- โก๏ธ Optimize aframe.utils.diff. (#3271)
- ๐ Raycaster fixes and performance improvements. (#3250)
- โ Remove garbage for addBehavior/removeBehavior. (#3217)
- โฌ๏ธ Reduce garbage in axismove in tracked-controls. (#3185)
- โก๏ธ Prevent component leakage in updateComponents (#3212)
- Cache font image textures for text component (#3158)
- โ Remove two array allocations per deepEqual call (#3115)
- โฌ๏ธ Reduce Object.keys usage in core/schema (#3117)
- ๐พ Save object allocation on look-controls.calculateDeltaRotation (#3116)
-
v0.7.1 Changes
October 18, 2017๐ This release contains the same functionality as 0.7.0. This is a version bump ๐ฆ to fix the npm package that shipped by mistake with an outdated THREE r86 ๐ version. (#3177)
-
v0.7.0 Changes
๐ This release features:
- ๐ Support for Windows Mixed Reality Headsets and Microsoft Edge.
- ๐ Support for glTF 2.0.
- ๐ Performance improvements to reduce garbage collection cycles.
Major Changes
- โ Add support for Windows Mixed Reality motion controllers. (#3013)
- โ Add glTF 2.0 support through upgrading three.js. glTF 1.0 is no longer supported. (#2986)
- โฌ๏ธ Bump THREE to r87. (#2994)
๐ Fixes
- Do not resize the canvas in VR which leads to resolution drop (#3031).
- ๐ Fix component build data when
previousData
is object and a property has anull
default value. (#3021) - ๐ Fix calculating mouse position for embedded scenes. (#2942)
- ๐ Fix missing detail property in a-scene onVRPresentChange. (#2920)
- ๐ Fix updates for the line component. (#2906)
โจ Enhancements
- ๐ Handle
vrdisplayconnect
andvrdisplaydisconnect
events in VREffect and VRControls. (#3019) - ๐ Allow text component to take a number value. (6cbdac)
- ๐ Handle
vrdisplaypointerrestricted
event ina-scene
. (#3014) - ๐ Allow decoupling of touch events in look-contols. (#3012)
- โ Add support for VR headsets that do not provide
stageParameters
. (#3000) - ๐ Moves canvas initialization logic from a component to the scene. (#2985)
- Listen to
vrdisplayconnect
andvrdisplaydisconnect
to enter and exit VR when headset is plugged or unplugged. (#2900) - โ Add title info to Enter VR button. (#2905)
- Cursor example improvements. (#2916)
- โ Add
vertexColors
property to base material component. (#2901) - โ Add
emissive
andemissiveIntensity
properties to base material component. (#2896)
๐ Performance
- โก๏ธ Optimize tracked controls tick, discovery, and utilities. (#2943)
- ๐ฏ Do not clone
attrValue
attributes into data anymore to reduce cloning. (#2939) - โก๏ธ Optimize a-entity code. (#2959)
- โก๏ธ Optimize wasd-controls with early returns and skipping of type checking. (#2945)
- โก๏ธ Optimize vec3 parse utility. (#2947)
- โก๏ธ Optimize component change/initialize events. (#2950)
- โก๏ธ Optimize look-controls by reducing object allocations and skipping of type checking. (#2944)
- โก๏ธ Optimize emit method by removing split/map/callback calls and allocations. (#2941)
- ๐พ Save a couple of function callbacks and array creations on each frame. (#2937)
- โ Remove inline functions for critical code paths in tracked-controls/raycaster/component for garbage collection. (#2936)
- โก๏ธ Do not update component when data not changed even if skipping type checking. (#2917)
-
v0.6.1 Changes
July 18, 2017๐ Bug fixes, support for Firefox on Android, mouse-based cursor, enable motion capture developer tools in the Inspector.
โจ Enhancements
- โ Add a mouse-based cursor / raycaster, apply to the link traversal example. (#2861)
- Replace BlendCharacter dependency with ObjectLoader for hand-controls component. (#2876)
๐ Bug Fixes
- ๐ Fix component updates when reusing same object by storing oldData after building component data. Pass undefined as oldData on component initialization for single-prop components. (#2840, #2871)
- More reliable entity loading order by checking against list of registered elements. (#2873)
- โฌ๏ธ Bump polyfill that fixes Firefox for Android tracking issue. (#2865)
- ๐ Use attribute for animation color as
from
iffrom
is not defined. (#2855) - Re-add controller events after unpausing scene. (#2879)
- ๐ Fix line component being applied in raycaster when disabled.
-
v0.6.0 Changes
June 29, 2017- ๐ Link traversal for navigating from page to page while staying in VR. Support
- for VR controllers across the board with the addition of Daydream and GearVR
- ๐ controller components as well as laser interactions. Large performance
- ๐ improvements around
.getAttribute
and.setAttribute
.
Major Changes
- โฌ๏ธ Bumped three.js to r84. (#2456)
- โก๏ธ Updated WebVR polyfill to 0.9.35. (#2700, #2818)
- โ Removed auto-enter-vr component previously for Carmel debugging. (#2784)
๐ Deprecations
- ๐ Renamed
AFRAME.utils.coordinates.isCoordinate
toAFRAME.utils.coordinates.isCoordinates
. (af3f89) - โ Removed reset sensor keyboard shortcut due to being removed from WebVR API. (#2531)
โจ Enhancements
- โ Added support for link traversal. (#1575)
- โ Added link component with default portal appearance. (#1575)
- โ Added link-controls component in the examples. (#1575)
- ๐ Daydream controller support with daydream-controls, 3DoF support to tracked-controls with head/arm model. (#2538)
- ๐ GearVR controller support with gearvr-controls. (#2545)
- ๐ฑ laser-controls component for responsive controls across 6DoF and 3DoF. (#2678)
- โ Added support for cursor component to draw a visible ray or project a mesh onto the intersection point. (#2678)
- โ Added
origin
anddirection
properties to configure raycaster component. (#2678) - ๐ Shadow support via shadow component and light properties. (#2350)
- ๐ Implement
thumbstickmoved
andaxismoved
for oculus-touch-controls. (#2513) - โก๏ธ Implement system
.update
handler. (#2548, #2613) - โ Added
controllerconnected
andcontrollerdisconnected
events. (#2505) - ๐ Handle
onvrdisplaypresentchange
events to enter and exit VR. (#2751) - ๐ฆ Exposed
material.alphaTest
andmaterial.depthWrite
properties. (#2516) - ๐ฆ Exposed glTF animations. (#2417)
- ๐ Implemented
Component.tock
handler called after scene render for future post-processing support. (#1564) - โ Added support for A-Frame being required in a Node environment. (#2476, #2477, #2484, #2492, #2498)
- ๐ Implemented
trackpadmoved
event for vive-controls component. (#2415) - โ Added
response-type
attribute to<a-asset-item>
to support array buffer responses. (#2442) - Automatically set glTF response types to array buffer. (63d2f8)
- Apply
camera.userHeight
to controller when no stage parameters (e.g., Daydream). (#2448) - ๐ Allow unsetting of mixin with
.setAttribute('mixin', '')
and.removeAttribute('mixin')
. (a173509) - ๐ Allow default lights to be disabled with
<a-scene light="defaultLightsEnabled: false">
. (#2376) - โ Added panner properties to sound component. (#2374)
- โ Added non-positional audio support to sound component. (#2490)
- ๐จ Refactored and unit test tracked-controls component. (#2396)
- โ Added triangle geometry. (#2573)
- ๐ Cleaned up cursor component when removed. (#2391)
- 0๏ธโฃ Normalized default component values to proper types rather than strings. (#2411)
- โ Removed unnecessary touching of
THREE.Cache
for asset responses. (#2435) - Throw error for developer if HTML is opened with
file://
protocol. (#2540) - Set
System.el
to the scene element. (#2566) - ๐ Use
isControllerPresent
utility rather than checkingnavigator.getGamepads
in order to fake oculus-touch-controls for motion capture. (#2604) - Check WebVR API rather than using a dolly to check for positional tracking capabilities. (#2602)
- 0๏ธโฃ Made default cone geometry look like a cone. (#2506)
- ๐ Show error message when loading Inspector. (#2525)
- โ Added validation warnings for schema default values. (#2511)
- โ Removed timestamps from debug and console messages to reduce noise. (#2550)
- ๐ Use
getElementById
vs.querySelector
for asset property types to be more strict. (#2578) - โ Added developer warnings for primitive mapping names. (#2631)
- 0๏ธโฃ Anti-alias by default on 2D desktop. (#2455)
- โ Added support for iOS 10 HLS video streaming. (#2597)
๐ Performance
- Skipped schema type checking when object is passed through
.setAttribute
more than once to consider it a validated object. (#2679) - ๐ฏ Made
.getAttribute
not clone component data object. Now returns raw reference to component data (#2689) - Disposed of unused texture objects from memory when no longer used by material component. (#2686)
- ๐ Throttled emitting of
componentchanged
event on each update to every 200ms. We recommend polling if more critical updates are needed. (#2683) - Avoided
string.split()
in.setAttribute()
to reduce memory in array instantiations. (#2674) - โ Removed duplicate asset requests by passing down
<img>
from<a-assets>
and by usingcrossorigin
from the start. (#2544) - ๐ Changed selector property types to support
getElementById
. (#2820) - โฌ๏ธ Reduced default
<a-cursor>
segments. (#2821)
๐ Fixes
- ๐ Fixed hand-controls blend-character animations between hand poses. (#2568)
- ๐ Fixed infinite loop when component
.init
handler calls.setAttribute
on itself. (#2454) - ๐ Fixed unreliable
requestAnimationFrame
timestamps by usingTHREE.Clock
in the render loop. (#2471) - ๐ Fixed error when entity detached while trying to load and then trying to initialize. (#2521)
- ๐ Fixed updating of
material.side
component. (#2528) - ๐ Fixed components sharing default array reference. (#2615)
- ๐ Fixed non-recursive raycasters. (#2331)
- ๐ Fixed various issues with sound component. (#2490)
- ๐ Fixed
AFRAME.utils.device.checkHeadsetConnected
to checkVRDisplay.isConnected
(for Windows Mixed Reality Headsets). (#2427) - ๐ Fixed video materials not respecting autoplay and controls attributes, set
playsinline
. (#2610) - ๐ Fixed cursor component
mouseup
event not being emitted if entity no longer intersecting. (#2678) - ๐ Fixed resetting material texture to null. (#2388)
- ๐ Fixed sound not playing when changing sound source. (#2457)
- ๐ Fixed
AFRAME.utils.deepEqual
recursion when comparing object with itself. (#2406) - ๐ Fixed
AFRAME.utils.deepEqual
when comparing non-Object objects like HTML elements (#2502) - ๐ Fixed loading of glTF files that did not include a default scene. (#2462)
- ๐ Fixed camera height when re-entering VR. (#2394)
- ๐ Fixed CSS cursor stuck to grabbing in Firefox. (#2684)
- ๐ Fixed tablets not being considered mobile devices in
AFRAME.utils.isMobile
. (#2309) - ๐ Fixed
AFRAME.utils.coordinates.isCoordinate
with scientific notation. (#2475) - ๐ Fixed pool component initializing twice. (#2407)
- ๐ Fixed error when injecting Inspector. (#2380)
- ๐ Fixed plane geometry segments. (#2499)
- ๐ Fixed grab CSS being applied when look-controls disabled. (#2642)
- ๐ Fixed look-controls enabling and disabling. (#2467)
- ๐ Fixed light targets. (#2715)
- ๐ Fixed
setAttribute
wiping out DOM-defined data on init. (#2727) - ๐ Fixed primitives mapping to non-default components. (#2767)
- ๐ Fixed vive-controls component button colors. (#2772)
- ๐ Fixed error if removing component before initialized. (#2713)
- ๐ Fixed booleans when updating component. (#2796)
- ๐ Fixed cursor component not waiting for canvas to load. (#2813)
- ๐ Fixed text component not updating text while font is loading. (#2814)
- ๐ Fixed WebVR polyfill being applied and user height not applied to GearVR browsers. (#2819)
- ๐ Fixed single-property mixins not working with primitives. (#2810)
-
v0.5.0 Changes
February 09, 2017๐ 0.5.0 contains text, glTF support, patches to enable WebVR record-and-replay โก๏ธ tools, WebVR polyfill updates, enhancements, and bug fixes.
Major Changes
- โฌ๏ธ Bumped three.js to r83. (#2214)
๐ Deprecations
- N/A.
โจ Enhancements
- โ Added
text
component for SDF and MSDF text. (#2289) - โ Added
gltf-model
component for loading glTF 3D models. (#2333) - โ Added new hand poses for Oculus Touch controls. (#2191)
- Attach
tracked-controls
event listeners even if no physical controllers are present. (#2314) - ๐ Made
Entity.removeAttribute(component, property)
reset a property value to its default. (#2353) - โ Added
AFRAME.utils.throttleTick
andAFRAME.utils.throttle
utils. (#2189) - ๐ Changed
hand-controls
to check for "not Oculus Touch" rather than "is Vive" to makehand-controls
be compatible with community control components (e.g., GearVR). (#2192) - ๐ Don't cache geometry if merging. (#2255)
- ๐ Allow unsetting of mixins with
setAttribute(mixinId, '')
. (#2291) - ๐ Allow access to the
screenshot
component canvas (#2316). - ๐ป Made
stats
component UI more readable. (#2313) - โ Added warning of registered components contain uppercase characters. (#2233)
- โ Added warning if entity is appended outside of a scene. (#2240)
- โ Added warning if geometry merge target is not an entity. (#2243)
- โ Removed unneeded object equality check getting called on component initialization. (#2322)
- โก๏ธ Updated
VREffect
to allow player scaling. (#2328) - Added guides to documentation for Using JavaScript and DOM APIs, Using with three.js, and Writing a Component (58555a, 982f66, 09a606).
๐ Fixes
- ๐ Fixed low iOS resolution and blur issues. (#2352)
- ๐ Fixed mobile resolution and canvas sizing issues by using WebVR polyfill with updated device database. (#2345)
- ๐ Fixed potential Vive controller issues across browsers by loosening the Gamepad ID check to only check for prefix. (#2370)
- ๐ Fixed
raycaster.interval
not being applied. (#2363) - ๐ Fixed system initialization affecting component updates. (#2367)
- ๐ Fixed unstable version of Inspector being injected on shortcut. (#2364)
- ๐ Fixed
vive-controls
not tracking. (#2194) - ๐ Fixed component updates getting called even if data did not change. (#2322)
- ๐ Fixed
envify
causing issues when installing from npm with a bundler. (c62690) - ๐ Fixed component updates with
setAttribute
usingdata
instead ofattrValue
. (#2184) - ๐ Fixed coordinate parser when passed
null
and when trying to override. (#2209) - ๐ Fixed error when
vr-mode-ui
is disabled andembedded
is enabled. (4607e2) - ๐ Fixed array property type updates through
AFRAME.utils.deepEqual
. (#2229) - ๐ Fixed
init
andupdate
handlers being called when doingflushToDOM
on non-loaded entity. (#2250). - ๐ Fixed disabling of
fog
. (#2251) - ๐ Fixed texture offset and repeats. (#2253)
- ๐ Fixed fullscreen not exiting when exiting VR. (#2264)
- ๐ Fixed component
pause
andremove
handlers not getting called on scene detach. (#2302) - ๐ Fixed multiple
look-controls
instances colliding. (#2335) - ๐ Fixed several component properties missing property types. (#2357)
-
v0.4.0 Changes
December 16, 2016๐ 0.4.0 contains Oculus Touch controller support, integration with the Registry ๐ by means of the Inspector, API polish, and bug fixes.
Major Changes
getAttribute
returns full computed rather than just defined component data set. (#1925)setAttribute
when passed an object (i.e.,setAttribute('material', {color: 'red'})
) no longer clobbers existing component data, it will instead extend existing component data. Pass atrue
flag as the third argument to clobber existing data.- Asset property type will directly pass the video element to a component if the value is a selector. (#2129)
- ๐จ Refactored primitives to fix component dependencies and initialization ordering. (#2106)
- โ Removed
transforms
feature from theregisterPrimitive
API. (#2045) - โ Removed deprecated
look-at
component. (#1913) - โ Removed deprecated Declarative Events API (
<a-event>
). (#1914)
๐ Deprecations
- ๐
getComputedAttribute
deprecated in favor ofgetAttribute
.getDOMAttribute
does whatgetAttribute
used to do. (#1925) - ๐
src
schema property type deprecated in favor ofasset
,audio
,map
,model
schema property types. (#2003) - ๐
AFRAME.utils.isMobile
,AFRAME.utils.isGearVR
,AFRAME.utils.checkHeadsetConnected
, andAFRAME.utils.isIOS
have all moved to theAFRAME.utils.device
namespace.
โจ Enhancements
- โฌ๏ธ Bumped three.js to r82. (#2081)
- ๐จ Oculus Touch controller support and controller refactor. (#2132)
- Inspector is pulled from
unpkg.com
CDN to be able to reference a fuzzy version. (e664fe6) - โ Added
reverseDrag
property tolook-controls
component to reverse mouse drag (ideal for static 360° content). (#2024) - ๐ป
auto-enter-vr
component for Carmel browser support, may be replaced once link traversal lands. (ae69e1d) - โ Added standard material map properties for ambient occlusion, displacements, normals, and spherical environments. (#1826, #2078)
- ๐ Asset parser no longer strictly demands URLs be wrapped with
url()
. (#2045) - โ Added ability to take equirectangular and projection screenshots with a keyboard shortcut. (#1984)
- โ Added
asset
,map
,model
,audio
schema property types. (#2054) - โ Added wireframe properties to the standard and flat materials. (#1971)
- Have
raycaster
component refresh its list of intersection targets when entities are attached or detached from the scene. (#1887) - โ Added
pool
component for performant object pooling and reuse. (#1954) - โ Added support for
tracked-controls
component to change its origin position (e.g., for teleportation). (#2002) - โ Added pooling to the
sound
component. (#1924) - โ Added intersection data to
cursor
component events. (#1920) - โ Added events to entity
setObject3D
andremoveObject3D
. (#2075) - โ Added
pauseSound()
method to thesound
component. (#1996) - โ Added loading feedback while A-Frame Inspector is being injected over the network. (#2006)
- โ Added console warning message if A-Frame script tag is included in the
<body>
. (#2000) - โ Added support for non-QWERTY keyboard layouts in
wasd-controls
component. (#1832) - Automatically set
playsinline
andwebkit-playsinline
on video elements in asset system. (#2076) - ๐ Used slightly faster function binding. (#1782)
- Made
stats
component alert text more readable. (#1885) - ๐ Allowed
inspector
component to be opened viapostMessage
. (#1997) - ๐ Allowed
stats
component to be disabled via querystring. (#1836) - ๐ฆ Exposed component prototype. (#2062)
- ๐ฆ Exposed
XHRLoader
in<a-assets>
. (#2023) - โ Added local Markdown documentation server
npm run docs
. (48ff50) - โ Added documentation test and lint script for checking links, fix links. (#2080)
๐ Fixes
- ๐ Fixed component dependencies where bugs manifested in the
obj-model
andraycaster
components. (#2036) - ๐ Fixed
int
property type with empty data being turned toNaN
. (#2063) - ๐ Fixed GearVR VR mode height by only removing
camera.userHeight
if positional tracking exists and the device is not a GearVR or smartphone. (#2044) - ๐ Fixed mixins not working with multiple-instanced components. (#1699)
- ๐ Fixed default components (i.e.,
position
,rotation
,scale
,visible
) not being flushed to DOM in debug mode. (#2064) - ๐ Fixed
cursor
mouseleave
event not being reliable with multiple close objects. (#1882) - ๐ Fixed
cursor
component intersecting itself. (#1936) - ๐ Fixed entity not being able to re-attach after being detached. (#1928)
- ๐ Fixed typos for
requestFullscreen
calls. (#1963) - ๐ Fixed
tracked-controls
component if a mesh was not applied. (#1875) - ๐ Fixed
raycaster
component passing its actual intersection objects through events. (#1978) - ๐ Fixed
stats
component for Safari. (#1865) - ๐ Normalized Git-tracked files to Unix-style line feeds. (#1825)
- ๐ Fixed stringifying default
null
values for object property types. (#2138) - ๐ Fixed material update referencing
sceneEl
when the scene has not yet loaded. (#2137) - ๐ Fixed default values of a schema property getting changed to weird values. (#2140)
Known Issues
- A regression in the October 29th version of Chromium passes microsecond-based
timestamp into
requestAnimationFrame
instead of milliseconds, breaking animations.
-
v0.3.2 Changes
October 12, 2016- ๐ WebVR 1.1 API support (#1931)