|
opensource/Apache2 | ||
|
| ||
|
| ||
|
| ||
|
Unlimited usernames. Password instant creates
username (by ed25519) and is not uploaded. If lose password, cant recover cuz end-to-end. Hackers get unlimited tries, use long password. Same user/pass work at many URLs/Tomcats. Dont need to login to make "P2P user content". Some features may only be available logged in. TODO careful what source of randomness used if randomly generate a password, dont use the time only. | ||
|
| ||
|
| ||
|
| ||
|
| ||
|
TODO put VarUI here
| ||
Play BellSack: move with left joystick and triggers, turn with right joystick, add/shoot balls with LB/RB, Select toggles A/B, Start toggles pause, left-stick click toggles Bellsack (Esc), right-stick click toggles TOP/red, both stick-clicks reload page. Edit terrain by mouse dragging the 5 colored knobs per circle/bell.
. Most of the options below are for lamglLoopBodyA which is the old code. The new code 2026-7 is lamglLoopBodyB which makes it sparse so you can have more stuff on screen and doing physics at once. But its too slow cuz its using too much CPU. Its fast enuf on GPU. Will fix it soon. Use this checkbox to change between the 2 modes A/B:
IsDo1PixelReadsToSyncGpuCpuTimingForBrowserPerformanceTabDiv WARNING: makes it slower but makes GPU measurable in Performance tab
Do1AtEndOfLamglLoopBodyB_IsDo1PixelReadsToSyncGpuCpuTimingForBrowserPerformanceTabDiv WARNING: makes it slower but makes GPU measurable in Performance tab
B multimode skip experiments
IsSkipCompute_bellsackShaderMode_nearestSurfaceSearchDiv IsSkipInputTensors_bellsackShaderMode_nearestSurfaceSearchDiv
IsSkipCompute_bellsackShaderMode_signedDistancePerturbSampleDiv IsSkipInputTensors_bellsackShaderMode_signedDistancePerturbSampleDiv
IsSkipCompute_packPerturbedSignedDistancesDiv
IsSkipCopy_xyz_or_packedSignedDistancesDiv
IsSkipCompute_bellsackShaderMode_raytraceDisplayDiv IsSkipInputTensors_bellsackShaderMode_raytraceDisplayDiv
DoStepBallBallBounceDiv DoStepBallRecovDiv
IsDisplayGraphicsShardTextLabelsDiv
IsShowVoxelOfNearestPointOnIsosurfaceToEachBallDiv
IsAllowPhysicsMove_lamglLoopBodyBDiv
DoTerrainImpulsePhysicsElseOnlyBalls_causesGPUCopyToCPUOf_signedDistancePerturbSampleDiv
DoSpeedStats_lamglLoopBodyBDiv
lamglLoopBodyB staged physics
todo multispecies
todo edjoints and level editor
===ALOT OF THE STUFF BELOW THIS APPLIES ONLY TO lamglLoopBodyA. lamglLoopBodyB is going to replace it but is experimental 2026-8-8+. See lamglLoopBodyBElseA checkbox.===
B multimode skip experiments
lamglLoopBodyB staged physics
todo multispecies
todo edjoints and level editor
===ALOT OF THE STUFF BELOW THIS APPLIES ONLY TO lamglLoopBodyA. lamglLoopBodyB is going to replace it but is experimental 2026-8-8+. See lamglLoopBodyBElseA checkbox.===
IsAllowAPIsThatRequireBrowserSecureContextDiv
(this does nothing 2026-8-2, use Lamgl.isDoExperimentY2026M8D2_loadGlExtension_KHR_parallel_shader_compile instead)
IsAsyncCompileIfCan_lamglLoopBodyA_bell5Textarea_experimentDiv
IsAsyncCompileIfCan_lamglLoopBodyB_zooDiv
IsAsyncCompileIfCan_lamglLoopBodyB_otherThanZooDiv
IsLamglLoopBodyBMoveBallsDownByGravityHackDiv
i need potential and kinetic energy computed both before and after the dt change. the steps are mixed up. Var.poten is not the only kind of potential energy. loss already includes that, so u shouldnt directly. There is 1 loss for whole world state (set of Var's), not per Var. One way to do it would be, tho i hope i dont have to complicate it with this, create .nextP and .nextV fields in Var, and have aVar.nextStateTemp(dt) set those in aVar.nextP and aVar.nextV which we will call nextStateEnd, and nextState(dt) would call nextStateTemp(dt) then this.p = this.nextP; this.v = this.nextV; so lamglLoopBody could call only nextStateTemp(dt) then adjust aVar.nextV to norm energy, then aVar.nextStateEnd(). is there another way to do it, or do we gotta do that?
IsCpuToGpuRgbdTestDiv
IsCpuToGpuRgbdTest_ReuseLastTsorAsSpeedTestDiv
IsCpuToGpuRgbdTest_CpuFillFloatArrayOnly1stDiv
IsCpuPaintRings_ifLevelEditorDiv
IsCpuDisplayEdjoints_ejX_ejY_ejZDiv
IsRemoveGlslCommentsDiv
IsRemoveUnreachableGlslFuncsAndStructsDiv
sfSourceMakerAToolsDiv
Is_Lamgl_makeConstantsUniformsNoLoopUnroll_Div
WARNING: Lamgl_makeSomeConstantsUniformsToPreventLoopUnrollingWhichSlowsCompiling does not display its mods in that code, such as turning "((80))" into "((uniform80))" then putting {uniform80: 80} into the Lamgl param, cuz that happens after sfSourceMakerA, but expect it to be there if the Is_Lamgl_makeConstantsUniformsNoLoopUnroll checkbox is checked (q.Opt.Is_Lamgl_makeConstantsUniformsNoLoopUnroll.p is nonzero), and use browser debugger to see that.
IsBallsGoInTensorElseGLUniformDiv
IsBalTerImpBouncByGpuSignDistThenCpuBo
IsBalTerImpBouncByGpuSignDistThenCpuBoRecov
IsDoBugFixFor_GroundSometimesAccelsOppositeDirectionB_Y2026M7D29ButLIkelyHasBeenBuggyForLongTime
(see IsBallBallRecovIfBounce farther below)
AlwaysCopyGraphicsToCPUJustToTestSpeed
EnableStrongRecoveryOnBalls
StartStrongRecovWhenBallPenetrTerMoreThan
FIXME the 3 multiprobe checkboxes are not working yet 2025-12-4-9aET.
IsBallBallRecovIfBounce (used with instantMirrorBounceBalls)
BackFaceTransparencyDiv
graphicsDebugDiv
newtonIterationsDiv
SignedDistanceSpeedDiv
DensityOfSlightAttractToVec3_mul
DisplayErrsOnSurfInBrightGreenIfAbsMoreThanDiv
AddToDensityForTestingDiv
Display3dLocalMinsOfGradientMagLessThanDiv
MultiprobeSortDensityMul
Bellsack 575.03 (and later) now has async compiling in Chromium but still sequentially delays in Firefox. This experiment uses the bell5Textarea text box at bottom of the top/red panel. If you edit it, you see the terrain change 1 second later but it keeps running smooth with previous compile until then. This will let you keep playing during loading as you move thru the 3d world, in future versions. Loading time sucks and Bellsack is not gonna have it during play. It will simply load stuff when you get near it before its needed. When editing, there will be about 0.2 seconds delay but for now 1 second delay, but either way that will happen async except in firefox which only has sync so in Firefox you can wait the 0.2-1 second as if a loading screen.
|
|