@@ -89,9 +89,34 @@ public void Initialize(BasisInput basisInput, BasisPointRaycaster pointRaycaster
8989 LineRenderer . positionCount = 2 ;
9090 HasLineRenderer = true ;
9191 LineRenderer . enabled = HasLineRenderer ;
92- LineRenderer . numCapVertices = 12 ;
93- LineRenderer . numCornerVertices = 12 ;
92+ LineRenderer . numCapVertices = 32 ;
93+ LineRenderer . numCornerVertices = 32 ;
9494 LineRenderer . gameObject . layer = UILayer ;
95+
96+ LineRenderer . useWorldSpace = true ;
97+ LineRenderer . textureMode = LineTextureMode . Tile ;
98+ LineRenderer . shadowCastingMode = UnityEngine . Rendering . ShadowCastingMode . Off ;
99+ LineRenderer . startWidth = 0.1f ;
100+ LineRenderer . endWidth = 0.1f ;
101+ LineRenderer . widthMultiplier = BasisPlayerInteract . interactLineWidth ;
102+ LineRenderer . useWorldSpace = true ;
103+ LineRenderer . textureMode = LineTextureMode . Tile ;
104+ LineRenderer . applyActiveColorSpace = false ;
105+ var g = new Gradient ( ) ;
106+ g . SetKeys (
107+ new [ ]
108+ {
109+ new GradientColorKey ( new Color ( 0.3019608f , 0.09411766f , 0.2980392f ) , 0f ) ,
110+ new GradientColorKey ( new Color ( 0.1058824f , 0.1411765f , 0.3137255f ) , 1f ) ,
111+ } ,
112+ new [ ]
113+ {
114+ new GradientAlphaKey ( 1.00f , 1 ) ,
115+ new GradientAlphaKey ( 1 , 0 ) ,
116+ }
117+ ) ;
118+
119+ LineRenderer . colorGradient = g ;
95120 }
96121 if ( basisInput . DeviceMatchSettings . HasRayCastRadical )
97122 {
@@ -249,8 +274,13 @@ private void UpdateLineRenderer()
249274
250275 if ( HasLineRenderer )
251276 {
252- LineRenderer . SetPosition ( 0 , BasisPointRaycaster . ray . origin ) ;
253- LineRenderer . SetPosition ( 1 , PhysicHit . point ) ;
277+ const float endOffset = 0.01f ; // tweak in meters (VR usually likes 0.005–0.02)
278+
279+ Vector3 start = BasisPointRaycaster . ray . origin ;
280+ Vector3 end = PhysicHit . point + PhysicHit . normal * endOffset ;
281+
282+ LineRenderer . SetPosition ( 0 , start ) ;
283+ LineRenderer . SetPosition ( 1 , end ) ;
254284 }
255285 }
256286
0 commit comments