比较提交
合并到: unity-tech-cn:main
unity-tech-cn:/main
unity-tech-cn:/develop-generalizationTraining-TrainerController
unity-tech-cn:/tag-0.2.0
unity-tech-cn:/tag-0.2.1
unity-tech-cn:/tag-0.2.1a
unity-tech-cn:/tag-0.2.1c
unity-tech-cn:/tag-0.2.1d
unity-tech-cn:/hotfix-v0.9.2a
unity-tech-cn:/develop-gpu-test
unity-tech-cn:/0.10.1
unity-tech-cn:/develop-pyinstaller
unity-tech-cn:/develop-horovod
unity-tech-cn:/PhysXArticulations20201
unity-tech-cn:/importdocfix
unity-tech-cn:/develop-resizetexture
unity-tech-cn:/hh-develop-walljump_bugfixes
unity-tech-cn:/develop-walljump-fix-sac
unity-tech-cn:/hh-develop-walljump_rnd
unity-tech-cn:/tag-0.11.0.dev0
unity-tech-cn:/develop-pytorch
unity-tech-cn:/tag-0.11.0.dev2
unity-tech-cn:/develop-newnormalization
unity-tech-cn:/tag-0.11.0.dev3
unity-tech-cn:/develop
unity-tech-cn:/release-0.12.0
unity-tech-cn:/tag-0.12.0-dev
unity-tech-cn:/tag-0.12.0.dev0
unity-tech-cn:/tag-0.12.1
unity-tech-cn:/2D-explorations
unity-tech-cn:/asymm-envs
unity-tech-cn:/tag-0.12.1.dev0
unity-tech-cn:/2D-exploration-raycast
unity-tech-cn:/tag-0.12.1.dev1
unity-tech-cn:/release-0.13.0
unity-tech-cn:/release-0.13.1
unity-tech-cn:/plugin-proof-of-concept
unity-tech-cn:/release-0.14.0
unity-tech-cn:/hotfix-bump-version-master
unity-tech-cn:/soccer-fives
unity-tech-cn:/release-0.14.1
unity-tech-cn:/bug-failed-api-check
unity-tech-cn:/test-recurrent-gail
unity-tech-cn:/hh-add-icons
unity-tech-cn:/release-0.15.0
unity-tech-cn:/release-0.15.1
unity-tech-cn:/hh-develop-all-posed-characters
unity-tech-cn:/internal-policy-ghost
unity-tech-cn:/distributed-training
unity-tech-cn:/hh-develop-improve_tennis
unity-tech-cn:/test-tf-ver
unity-tech-cn:/release_1_branch
unity-tech-cn:/tennis-time-horizon
unity-tech-cn:/whitepaper-experiments
unity-tech-cn:/r2v-yamato-linux
unity-tech-cn:/docs-update
unity-tech-cn:/release_2_branch
unity-tech-cn:/exp-mede
unity-tech-cn:/sensitivity
unity-tech-cn:/release_2_verified_load_fix
unity-tech-cn:/test-sampler
unity-tech-cn:/release_2_verified
unity-tech-cn:/hh-develop-ragdoll-testing
unity-tech-cn:/origin-develop-taggedobservations
unity-tech-cn:/MLA-1734-demo-provider
unity-tech-cn:/sampler-refactor-copy
unity-tech-cn:/PhysXArticulations20201Package
unity-tech-cn:/tag-com.unity.ml-agents_1.0.8
unity-tech-cn:/release_3_branch
unity-tech-cn:/github-actions
unity-tech-cn:/release_3_distributed
unity-tech-cn:/fix-batch-tennis
unity-tech-cn:/distributed-ppo-sac
unity-tech-cn:/gridworld-custom-obs
unity-tech-cn:/hw20-segmentation
unity-tech-cn:/hh-develop-gamedev-demo
unity-tech-cn:/active-variablespeed
unity-tech-cn:/release_4_branch
unity-tech-cn:/fix-env-step-loop
unity-tech-cn:/release_5_branch
unity-tech-cn:/fix-walker
unity-tech-cn:/release_6_branch
unity-tech-cn:/hh-32-observation-crawler
unity-tech-cn:/trainer-plugin
unity-tech-cn:/hh-develop-max-steps-demo-recorder
unity-tech-cn:/hh-develop-loco-walker-variable-speed
unity-tech-cn:/exp-0002
unity-tech-cn:/experiment-less-max-step
unity-tech-cn:/hh-develop-hallway-wall-mesh-fix
unity-tech-cn:/release_7_branch
unity-tech-cn:/exp-vince
unity-tech-cn:/hh-develop-gridsensor-tests
unity-tech-cn:/tag-release_8_test0
unity-tech-cn:/tag-release_8_test1
unity-tech-cn:/release_8_branch
unity-tech-cn:/docfix-end-episode
unity-tech-cn:/release_9_branch
unity-tech-cn:/hybrid-action-rewardsignals
unity-tech-cn:/MLA-462-yamato-win
unity-tech-cn:/exp-alternate-atten
unity-tech-cn:/hh-develop-fps_game_project
unity-tech-cn:/fix-conflict-base-env
unity-tech-cn:/release_10_branch
unity-tech-cn:/exp-bullet-hell-trainer
unity-tech-cn:/ai-summit-exp
unity-tech-cn:/comms-grad
unity-tech-cn:/walljump-pushblock
unity-tech-cn:/goal-conditioning
unity-tech-cn:/release_11_branch
unity-tech-cn:/hh-develop-water-balloon-fight
unity-tech-cn:/gc-hyper
unity-tech-cn:/layernorm
unity-tech-cn:/yamato-linux-debug-venv
unity-tech-cn:/soccer-comms
unity-tech-cn:/hh-develop-pushblockcollab
unity-tech-cn:/release_12_branch
unity-tech-cn:/fix-get-step-sp-curr
unity-tech-cn:/continuous-comms
unity-tech-cn:/no-comms
unity-tech-cn:/hh-develop-zombiepushblock
unity-tech-cn:/hypernetwork
unity-tech-cn:/revert-4859-develop-update-readme
unity-tech-cn:/sequencer-env-attention
unity-tech-cn:/hh-develop-variableobs
unity-tech-cn:/exp-tanh
unity-tech-cn:/reward-dist
unity-tech-cn:/exp-weight-decay
unity-tech-cn:/exp-robot
unity-tech-cn:/bullet-hell-barracuda-test-1.3.1
unity-tech-cn:/release_13_branch
unity-tech-cn:/release_14_branch
unity-tech-cn:/exp-clipped-gaussian-entropy
unity-tech-cn:/tic-tac-toe
unity-tech-cn:/hh-develop-dodgeball
unity-tech-cn:/repro-vis-obs-perf
unity-tech-cn:/v2-staging-rebase
unity-tech-cn:/release_15_branch
unity-tech-cn:/release_15_removeendepisode
unity-tech-cn:/release_16_branch
unity-tech-cn:/release_16_fix_gridsensor
unity-tech-cn:/ai-hw-2021
unity-tech-cn:/check-for-ModelOverriders
unity-tech-cn:/fix-grid-obs-shape-init
unity-tech-cn:/fix-gym-needs-reset
unity-tech-cn:/fix-resume-imi
unity-tech-cn:/release_17_branch
unity-tech-cn:/release_17_branch_gpu_test
unity-tech-cn:/colab-links
unity-tech-cn:/exp-continuous-div
unity-tech-cn:/release_17_branch_gpu_2
unity-tech-cn:/exp-diverse-behavior
unity-tech-cn:/grid-onehot-extra-dim-empty
unity-tech-cn:/2.0-verified
unity-tech-cn:/faster-entropy-coeficient-convergence
unity-tech-cn:/pre-r18-update-changelog
unity-tech-cn:/release_18_branch
unity-tech-cn:/main/tracking
unity-tech-cn:/main/reward-providers
unity-tech-cn:/main/project-upgrade
unity-tech-cn:/main/limitation-docs
unity-tech-cn:/develop/nomaxstep-test
unity-tech-cn:/develop/tf2.0
unity-tech-cn:/develop/tanhsquash
unity-tech-cn:/develop/magic-string
unity-tech-cn:/develop/trainerinterface
unity-tech-cn:/develop/separatevalue
unity-tech-cn:/develop/nopreviousactions
unity-tech-cn:/develop/reenablerepeatactions
unity-tech-cn:/develop/0memories
unity-tech-cn:/develop/fixmemoryleak
unity-tech-cn:/develop/reducewalljump
unity-tech-cn:/develop/removeactionholder-onehot
unity-tech-cn:/develop/canonicalize-quaternions
unity-tech-cn:/develop/self-playassym
unity-tech-cn:/develop/demo-load-seek
unity-tech-cn:/develop/progress-bar
unity-tech-cn:/develop/sac-apex
unity-tech-cn:/develop/cubewars
unity-tech-cn:/develop/add-fire
unity-tech-cn:/develop/gym-wrapper
unity-tech-cn:/develop/mm-docs-main-readme
unity-tech-cn:/develop/mm-docs-overview
unity-tech-cn:/develop/no-threading
unity-tech-cn:/develop/dockerfile
unity-tech-cn:/develop/model-store
unity-tech-cn:/develop/checkout-conversion-rebase
unity-tech-cn:/develop/model-transfer
unity-tech-cn:/develop/bisim-review
unity-tech-cn:/develop/taggedobservations
unity-tech-cn:/develop/transfer-bisim
unity-tech-cn:/develop/bisim-sac-transfer
unity-tech-cn:/develop/basketball
unity-tech-cn:/develop/torchmodules
unity-tech-cn:/develop/fixmarkdown
unity-tech-cn:/develop/shortenstrikervsgoalie
unity-tech-cn:/develop/shortengoalie
unity-tech-cn:/develop/torch-save-rp
unity-tech-cn:/develop/torch-to-np
unity-tech-cn:/develop/torch-omp-no-thread
unity-tech-cn:/develop/actionmodel-csharp
unity-tech-cn:/develop/torch-extra
unity-tech-cn:/develop/restructure-torch-networks
unity-tech-cn:/develop/jit
unity-tech-cn:/develop/adjust-cpu-settings-experiment
unity-tech-cn:/develop/torch-sac-threading
unity-tech-cn:/develop/wb
unity-tech-cn:/develop/amrl
unity-tech-cn:/develop/memorydump
unity-tech-cn:/develop/permutepytorch
unity-tech-cn:/develop/sac-targetq
unity-tech-cn:/develop/actions-out
unity-tech-cn:/develop/reshapeonnxmemories
unity-tech-cn:/develop/crawlergail
unity-tech-cn:/develop/debugtorchfood
unity-tech-cn:/develop/hybrid-actions
unity-tech-cn:/develop/bullet-hell
unity-tech-cn:/develop/action-spec-gym
unity-tech-cn:/develop/battlefoodcollector
unity-tech-cn:/develop/use-action-buffers
unity-tech-cn:/develop/hardswish
unity-tech-cn:/develop/leakyrelu
unity-tech-cn:/develop/torch-clip-scale
unity-tech-cn:/develop/contentropy
unity-tech-cn:/develop/manch
unity-tech-cn:/develop/torchcrawlerdebug
unity-tech-cn:/develop/fix-nan
unity-tech-cn:/develop/multitype-buffer
unity-tech-cn:/develop/windows-delay
unity-tech-cn:/develop/torch-tanh
unity-tech-cn:/develop/gail-norm
unity-tech-cn:/develop/multiprocess
unity-tech-cn:/develop/unified-obs
unity-tech-cn:/develop/rm-rf-new-models
unity-tech-cn:/develop/skipcritic
unity-tech-cn:/develop/centralizedcritic
unity-tech-cn:/develop/dodgeball-tests
unity-tech-cn:/develop/cc-teammanager
unity-tech-cn:/develop/weight-decay
unity-tech-cn:/develop/singular-embeddings
unity-tech-cn:/develop/zombieteammanager
unity-tech-cn:/develop/superpush
unity-tech-cn:/develop/teammanager
unity-tech-cn:/develop/zombie-exp
unity-tech-cn:/develop/update-readme
unity-tech-cn:/develop/readme-fix
unity-tech-cn:/develop/coma-noact
unity-tech-cn:/develop/coma-withq
unity-tech-cn:/develop/coma2
unity-tech-cn:/develop/action-slice
unity-tech-cn:/develop/gru
unity-tech-cn:/develop/critic-op-lstm-currentmem
unity-tech-cn:/develop/decaygail
unity-tech-cn:/develop/gail-srl-hack
unity-tech-cn:/develop/rear-pad
unity-tech-cn:/develop/mm-copyright-dates
unity-tech-cn:/develop/dodgeball-raycasts
unity-tech-cn:/develop/collab-envs-exp-ervin
unity-tech-cn:/develop/pushcollabonly
unity-tech-cn:/develop/sample-curation
unity-tech-cn:/develop/soccer-groupman
unity-tech-cn:/develop/input-actuator-tanks
unity-tech-cn:/develop/validate-release-fix
unity-tech-cn:/develop/new-console-log
unity-tech-cn:/develop/lex-walker-model
unity-tech-cn:/develop/lstm-burnin
unity-tech-cn:/develop/grid-vaiable-names
unity-tech-cn:/develop/fix-attn-embedding
unity-tech-cn:/develop/api-documentation-update-some-fixes
unity-tech-cn:/develop/update-grpc
unity-tech-cn:/develop/grid-rootref-debug
unity-tech-cn:/develop/pbcollab-rays
unity-tech-cn:/develop/2.0-verified-pre
unity-tech-cn:/develop/parameterizedenvs
unity-tech-cn:/develop/custom-ray-sensor
unity-tech-cn:/develop/mm-add-v2blog
unity-tech-cn:/develop/custom-raycast
unity-tech-cn:/develop/area-manager
unity-tech-cn:/develop/remove-unecessary-lr
unity-tech-cn:/develop/use-base-env-in-learn
unity-tech-cn:/soccer-fives/multiagent
unity-tech-cn:/develop/cubewars/splashdamage
unity-tech-cn:/develop/add-fire/exp
unity-tech-cn:/develop/add-fire/jit
unity-tech-cn:/develop/add-fire/speedtest
unity-tech-cn:/develop/add-fire/bc
unity-tech-cn:/develop/add-fire/ckpt-2
unity-tech-cn:/develop/add-fire/normalize-context
unity-tech-cn:/develop/add-fire/components-dir
unity-tech-cn:/develop/add-fire/halfentropy
unity-tech-cn:/develop/add-fire/memoryclass
unity-tech-cn:/develop/add-fire/categoricaldist
unity-tech-cn:/develop/add-fire/mm
unity-tech-cn:/develop/add-fire/sac-lst
unity-tech-cn:/develop/add-fire/mm3
unity-tech-cn:/develop/add-fire/continuous
unity-tech-cn:/develop/add-fire/ghost
unity-tech-cn:/develop/add-fire/policy-tests
unity-tech-cn:/develop/add-fire/export-discrete
unity-tech-cn:/develop/add-fire/test-simple-rl-fix-resnet
unity-tech-cn:/develop/add-fire/remove-currdoc
unity-tech-cn:/develop/add-fire/clean2
unity-tech-cn:/develop/add-fire/doc-cleanups
unity-tech-cn:/develop/add-fire/changelog
unity-tech-cn:/develop/add-fire/mm2
unity-tech-cn:/develop/model-transfer/add-physics
unity-tech-cn:/develop/model-transfer/train
unity-tech-cn:/develop/jit/experiments
unity-tech-cn:/exp-vince/sep30-2020
unity-tech-cn:/hh-develop-gridsensor-tests/static
unity-tech-cn:/develop/hybrid-actions/distlist
unity-tech-cn:/develop/bullet-hell/buffer
unity-tech-cn:/goal-conditioning/new
unity-tech-cn:/goal-conditioning/sensors-2
unity-tech-cn:/goal-conditioning/sensors-3-pytest-fix
unity-tech-cn:/goal-conditioning/grid-world
unity-tech-cn:/soccer-comms/disc
unity-tech-cn:/develop/centralizedcritic/counterfact
unity-tech-cn:/develop/centralizedcritic/mm
unity-tech-cn:/develop/centralizedcritic/nonego
unity-tech-cn:/develop/zombieteammanager/disableagent
unity-tech-cn:/develop/zombieteammanager/killfirst
unity-tech-cn:/develop/superpush/int
unity-tech-cn:/develop/superpush/branch-cleanup
unity-tech-cn:/develop/teammanager/int
unity-tech-cn:/develop/teammanager/cubewar-nocycle
unity-tech-cn:/develop/teammanager/cubewars
unity-tech-cn:/develop/superpush/int/hunter
unity-tech-cn:/goal-conditioning/new/allo-crawler
unity-tech-cn:/develop/coma2/clip
unity-tech-cn:/develop/coma2/singlenetwork
unity-tech-cn:/develop/coma2/samenet
unity-tech-cn:/develop/coma2/fixgroup
unity-tech-cn:/develop/coma2/samenet/sum
unity-tech-cn:/hh-develop-dodgeball/goy-input
unity-tech-cn:/develop/soccer-groupman/mod
unity-tech-cn:/develop/soccer-groupman/mod/hunter
unity-tech-cn:/develop/soccer-groupman/mod/hunter/cine
unity-tech-cn:/ai-hw-2021/tensor-applier
拉取从: unity-tech-cn:hw20-segmentation
unity-tech-cn:/main
unity-tech-cn:/develop-generalizationTraining-TrainerController
unity-tech-cn:/tag-0.2.0
unity-tech-cn:/tag-0.2.1
unity-tech-cn:/tag-0.2.1a
unity-tech-cn:/tag-0.2.1c
unity-tech-cn:/tag-0.2.1d
unity-tech-cn:/hotfix-v0.9.2a
unity-tech-cn:/develop-gpu-test
unity-tech-cn:/0.10.1
unity-tech-cn:/develop-pyinstaller
unity-tech-cn:/develop-horovod
unity-tech-cn:/PhysXArticulations20201
unity-tech-cn:/importdocfix
unity-tech-cn:/develop-resizetexture
unity-tech-cn:/hh-develop-walljump_bugfixes
unity-tech-cn:/develop-walljump-fix-sac
unity-tech-cn:/hh-develop-walljump_rnd
unity-tech-cn:/tag-0.11.0.dev0
unity-tech-cn:/develop-pytorch
unity-tech-cn:/tag-0.11.0.dev2
unity-tech-cn:/develop-newnormalization
unity-tech-cn:/tag-0.11.0.dev3
unity-tech-cn:/develop
unity-tech-cn:/release-0.12.0
unity-tech-cn:/tag-0.12.0-dev
unity-tech-cn:/tag-0.12.0.dev0
unity-tech-cn:/tag-0.12.1
unity-tech-cn:/2D-explorations
unity-tech-cn:/asymm-envs
unity-tech-cn:/tag-0.12.1.dev0
unity-tech-cn:/2D-exploration-raycast
unity-tech-cn:/tag-0.12.1.dev1
unity-tech-cn:/release-0.13.0
unity-tech-cn:/release-0.13.1
unity-tech-cn:/plugin-proof-of-concept
unity-tech-cn:/release-0.14.0
unity-tech-cn:/hotfix-bump-version-master
unity-tech-cn:/soccer-fives
unity-tech-cn:/release-0.14.1
unity-tech-cn:/bug-failed-api-check
unity-tech-cn:/test-recurrent-gail
unity-tech-cn:/hh-add-icons
unity-tech-cn:/release-0.15.0
unity-tech-cn:/release-0.15.1
unity-tech-cn:/hh-develop-all-posed-characters
unity-tech-cn:/internal-policy-ghost
unity-tech-cn:/distributed-training
unity-tech-cn:/hh-develop-improve_tennis
unity-tech-cn:/test-tf-ver
unity-tech-cn:/release_1_branch
unity-tech-cn:/tennis-time-horizon
unity-tech-cn:/whitepaper-experiments
unity-tech-cn:/r2v-yamato-linux
unity-tech-cn:/docs-update
unity-tech-cn:/release_2_branch
unity-tech-cn:/exp-mede
unity-tech-cn:/sensitivity
unity-tech-cn:/release_2_verified_load_fix
unity-tech-cn:/test-sampler
unity-tech-cn:/release_2_verified
unity-tech-cn:/hh-develop-ragdoll-testing
unity-tech-cn:/origin-develop-taggedobservations
unity-tech-cn:/MLA-1734-demo-provider
unity-tech-cn:/sampler-refactor-copy
unity-tech-cn:/PhysXArticulations20201Package
unity-tech-cn:/tag-com.unity.ml-agents_1.0.8
unity-tech-cn:/release_3_branch
unity-tech-cn:/github-actions
unity-tech-cn:/release_3_distributed
unity-tech-cn:/fix-batch-tennis
unity-tech-cn:/distributed-ppo-sac
unity-tech-cn:/gridworld-custom-obs
unity-tech-cn:/hw20-segmentation
unity-tech-cn:/hh-develop-gamedev-demo
unity-tech-cn:/active-variablespeed
unity-tech-cn:/release_4_branch
unity-tech-cn:/fix-env-step-loop
unity-tech-cn:/release_5_branch
unity-tech-cn:/fix-walker
unity-tech-cn:/release_6_branch
unity-tech-cn:/hh-32-observation-crawler
unity-tech-cn:/trainer-plugin
unity-tech-cn:/hh-develop-max-steps-demo-recorder
unity-tech-cn:/hh-develop-loco-walker-variable-speed
unity-tech-cn:/exp-0002
unity-tech-cn:/experiment-less-max-step
unity-tech-cn:/hh-develop-hallway-wall-mesh-fix
unity-tech-cn:/release_7_branch
unity-tech-cn:/exp-vince
unity-tech-cn:/hh-develop-gridsensor-tests
unity-tech-cn:/tag-release_8_test0
unity-tech-cn:/tag-release_8_test1
unity-tech-cn:/release_8_branch
unity-tech-cn:/docfix-end-episode
unity-tech-cn:/release_9_branch
unity-tech-cn:/hybrid-action-rewardsignals
unity-tech-cn:/MLA-462-yamato-win
unity-tech-cn:/exp-alternate-atten
unity-tech-cn:/hh-develop-fps_game_project
unity-tech-cn:/fix-conflict-base-env
unity-tech-cn:/release_10_branch
unity-tech-cn:/exp-bullet-hell-trainer
unity-tech-cn:/ai-summit-exp
unity-tech-cn:/comms-grad
unity-tech-cn:/walljump-pushblock
unity-tech-cn:/goal-conditioning
unity-tech-cn:/release_11_branch
unity-tech-cn:/hh-develop-water-balloon-fight
unity-tech-cn:/gc-hyper
unity-tech-cn:/layernorm
unity-tech-cn:/yamato-linux-debug-venv
unity-tech-cn:/soccer-comms
unity-tech-cn:/hh-develop-pushblockcollab
unity-tech-cn:/release_12_branch
unity-tech-cn:/fix-get-step-sp-curr
unity-tech-cn:/continuous-comms
unity-tech-cn:/no-comms
unity-tech-cn:/hh-develop-zombiepushblock
unity-tech-cn:/hypernetwork
unity-tech-cn:/revert-4859-develop-update-readme
unity-tech-cn:/sequencer-env-attention
unity-tech-cn:/hh-develop-variableobs
unity-tech-cn:/exp-tanh
unity-tech-cn:/reward-dist
unity-tech-cn:/exp-weight-decay
unity-tech-cn:/exp-robot
unity-tech-cn:/bullet-hell-barracuda-test-1.3.1
unity-tech-cn:/release_13_branch
unity-tech-cn:/release_14_branch
unity-tech-cn:/exp-clipped-gaussian-entropy
unity-tech-cn:/tic-tac-toe
unity-tech-cn:/hh-develop-dodgeball
unity-tech-cn:/repro-vis-obs-perf
unity-tech-cn:/v2-staging-rebase
unity-tech-cn:/release_15_branch
unity-tech-cn:/release_15_removeendepisode
unity-tech-cn:/release_16_branch
unity-tech-cn:/release_16_fix_gridsensor
unity-tech-cn:/ai-hw-2021
unity-tech-cn:/check-for-ModelOverriders
unity-tech-cn:/fix-grid-obs-shape-init
unity-tech-cn:/fix-gym-needs-reset
unity-tech-cn:/fix-resume-imi
unity-tech-cn:/release_17_branch
unity-tech-cn:/release_17_branch_gpu_test
unity-tech-cn:/colab-links
unity-tech-cn:/exp-continuous-div
unity-tech-cn:/release_17_branch_gpu_2
unity-tech-cn:/exp-diverse-behavior
unity-tech-cn:/grid-onehot-extra-dim-empty
unity-tech-cn:/2.0-verified
unity-tech-cn:/faster-entropy-coeficient-convergence
unity-tech-cn:/pre-r18-update-changelog
unity-tech-cn:/release_18_branch
unity-tech-cn:/main/tracking
unity-tech-cn:/main/reward-providers
unity-tech-cn:/main/project-upgrade
unity-tech-cn:/main/limitation-docs
unity-tech-cn:/develop/nomaxstep-test
unity-tech-cn:/develop/tf2.0
unity-tech-cn:/develop/tanhsquash
unity-tech-cn:/develop/magic-string
unity-tech-cn:/develop/trainerinterface
unity-tech-cn:/develop/separatevalue
unity-tech-cn:/develop/nopreviousactions
unity-tech-cn:/develop/reenablerepeatactions
unity-tech-cn:/develop/0memories
unity-tech-cn:/develop/fixmemoryleak
unity-tech-cn:/develop/reducewalljump
unity-tech-cn:/develop/removeactionholder-onehot
unity-tech-cn:/develop/canonicalize-quaternions
unity-tech-cn:/develop/self-playassym
unity-tech-cn:/develop/demo-load-seek
unity-tech-cn:/develop/progress-bar
unity-tech-cn:/develop/sac-apex
unity-tech-cn:/develop/cubewars
unity-tech-cn:/develop/add-fire
unity-tech-cn:/develop/gym-wrapper
unity-tech-cn:/develop/mm-docs-main-readme
unity-tech-cn:/develop/mm-docs-overview
unity-tech-cn:/develop/no-threading
unity-tech-cn:/develop/dockerfile
unity-tech-cn:/develop/model-store
unity-tech-cn:/develop/checkout-conversion-rebase
unity-tech-cn:/develop/model-transfer
unity-tech-cn:/develop/bisim-review
unity-tech-cn:/develop/taggedobservations
unity-tech-cn:/develop/transfer-bisim
unity-tech-cn:/develop/bisim-sac-transfer
unity-tech-cn:/develop/basketball
unity-tech-cn:/develop/torchmodules
unity-tech-cn:/develop/fixmarkdown
unity-tech-cn:/develop/shortenstrikervsgoalie
unity-tech-cn:/develop/shortengoalie
unity-tech-cn:/develop/torch-save-rp
unity-tech-cn:/develop/torch-to-np
unity-tech-cn:/develop/torch-omp-no-thread
unity-tech-cn:/develop/actionmodel-csharp
unity-tech-cn:/develop/torch-extra
unity-tech-cn:/develop/restructure-torch-networks
unity-tech-cn:/develop/jit
unity-tech-cn:/develop/adjust-cpu-settings-experiment
unity-tech-cn:/develop/torch-sac-threading
unity-tech-cn:/develop/wb
unity-tech-cn:/develop/amrl
unity-tech-cn:/develop/memorydump
unity-tech-cn:/develop/permutepytorch
unity-tech-cn:/develop/sac-targetq
unity-tech-cn:/develop/actions-out
unity-tech-cn:/develop/reshapeonnxmemories
unity-tech-cn:/develop/crawlergail
unity-tech-cn:/develop/debugtorchfood
unity-tech-cn:/develop/hybrid-actions
unity-tech-cn:/develop/bullet-hell
unity-tech-cn:/develop/action-spec-gym
unity-tech-cn:/develop/battlefoodcollector
unity-tech-cn:/develop/use-action-buffers
unity-tech-cn:/develop/hardswish
unity-tech-cn:/develop/leakyrelu
unity-tech-cn:/develop/torch-clip-scale
unity-tech-cn:/develop/contentropy
unity-tech-cn:/develop/manch
unity-tech-cn:/develop/torchcrawlerdebug
unity-tech-cn:/develop/fix-nan
unity-tech-cn:/develop/multitype-buffer
unity-tech-cn:/develop/windows-delay
unity-tech-cn:/develop/torch-tanh
unity-tech-cn:/develop/gail-norm
unity-tech-cn:/develop/multiprocess
unity-tech-cn:/develop/unified-obs
unity-tech-cn:/develop/rm-rf-new-models
unity-tech-cn:/develop/skipcritic
unity-tech-cn:/develop/centralizedcritic
unity-tech-cn:/develop/dodgeball-tests
unity-tech-cn:/develop/cc-teammanager
unity-tech-cn:/develop/weight-decay
unity-tech-cn:/develop/singular-embeddings
unity-tech-cn:/develop/zombieteammanager
unity-tech-cn:/develop/superpush
unity-tech-cn:/develop/teammanager
unity-tech-cn:/develop/zombie-exp
unity-tech-cn:/develop/update-readme
unity-tech-cn:/develop/readme-fix
unity-tech-cn:/develop/coma-noact
unity-tech-cn:/develop/coma-withq
unity-tech-cn:/develop/coma2
unity-tech-cn:/develop/action-slice
unity-tech-cn:/develop/gru
unity-tech-cn:/develop/critic-op-lstm-currentmem
unity-tech-cn:/develop/decaygail
unity-tech-cn:/develop/gail-srl-hack
unity-tech-cn:/develop/rear-pad
unity-tech-cn:/develop/mm-copyright-dates
unity-tech-cn:/develop/dodgeball-raycasts
unity-tech-cn:/develop/collab-envs-exp-ervin
unity-tech-cn:/develop/pushcollabonly
unity-tech-cn:/develop/sample-curation
unity-tech-cn:/develop/soccer-groupman
unity-tech-cn:/develop/input-actuator-tanks
unity-tech-cn:/develop/validate-release-fix
unity-tech-cn:/develop/new-console-log
unity-tech-cn:/develop/lex-walker-model
unity-tech-cn:/develop/lstm-burnin
unity-tech-cn:/develop/grid-vaiable-names
unity-tech-cn:/develop/fix-attn-embedding
unity-tech-cn:/develop/api-documentation-update-some-fixes
unity-tech-cn:/develop/update-grpc
unity-tech-cn:/develop/grid-rootref-debug
unity-tech-cn:/develop/pbcollab-rays
unity-tech-cn:/develop/2.0-verified-pre
unity-tech-cn:/develop/parameterizedenvs
unity-tech-cn:/develop/custom-ray-sensor
unity-tech-cn:/develop/mm-add-v2blog
unity-tech-cn:/develop/custom-raycast
unity-tech-cn:/develop/area-manager
unity-tech-cn:/develop/remove-unecessary-lr
unity-tech-cn:/develop/use-base-env-in-learn
unity-tech-cn:/soccer-fives/multiagent
unity-tech-cn:/develop/cubewars/splashdamage
unity-tech-cn:/develop/add-fire/exp
unity-tech-cn:/develop/add-fire/jit
unity-tech-cn:/develop/add-fire/speedtest
unity-tech-cn:/develop/add-fire/bc
unity-tech-cn:/develop/add-fire/ckpt-2
unity-tech-cn:/develop/add-fire/normalize-context
unity-tech-cn:/develop/add-fire/components-dir
unity-tech-cn:/develop/add-fire/halfentropy
unity-tech-cn:/develop/add-fire/memoryclass
unity-tech-cn:/develop/add-fire/categoricaldist
unity-tech-cn:/develop/add-fire/mm
unity-tech-cn:/develop/add-fire/sac-lst
unity-tech-cn:/develop/add-fire/mm3
unity-tech-cn:/develop/add-fire/continuous
unity-tech-cn:/develop/add-fire/ghost
unity-tech-cn:/develop/add-fire/policy-tests
unity-tech-cn:/develop/add-fire/export-discrete
unity-tech-cn:/develop/add-fire/test-simple-rl-fix-resnet
unity-tech-cn:/develop/add-fire/remove-currdoc
unity-tech-cn:/develop/add-fire/clean2
unity-tech-cn:/develop/add-fire/doc-cleanups
unity-tech-cn:/develop/add-fire/changelog
unity-tech-cn:/develop/add-fire/mm2
unity-tech-cn:/develop/model-transfer/add-physics
unity-tech-cn:/develop/model-transfer/train
unity-tech-cn:/develop/jit/experiments
unity-tech-cn:/exp-vince/sep30-2020
unity-tech-cn:/hh-develop-gridsensor-tests/static
unity-tech-cn:/develop/hybrid-actions/distlist
unity-tech-cn:/develop/bullet-hell/buffer
unity-tech-cn:/goal-conditioning/new
unity-tech-cn:/goal-conditioning/sensors-2
unity-tech-cn:/goal-conditioning/sensors-3-pytest-fix
unity-tech-cn:/goal-conditioning/grid-world
unity-tech-cn:/soccer-comms/disc
unity-tech-cn:/develop/centralizedcritic/counterfact
unity-tech-cn:/develop/centralizedcritic/mm
unity-tech-cn:/develop/centralizedcritic/nonego
unity-tech-cn:/develop/zombieteammanager/disableagent
unity-tech-cn:/develop/zombieteammanager/killfirst
unity-tech-cn:/develop/superpush/int
unity-tech-cn:/develop/superpush/branch-cleanup
unity-tech-cn:/develop/teammanager/int
unity-tech-cn:/develop/teammanager/cubewar-nocycle
unity-tech-cn:/develop/teammanager/cubewars
unity-tech-cn:/develop/superpush/int/hunter
unity-tech-cn:/goal-conditioning/new/allo-crawler
unity-tech-cn:/develop/coma2/clip
unity-tech-cn:/develop/coma2/singlenetwork
unity-tech-cn:/develop/coma2/samenet
unity-tech-cn:/develop/coma2/fixgroup
unity-tech-cn:/develop/coma2/samenet/sum
unity-tech-cn:/hh-develop-dodgeball/goy-input
unity-tech-cn:/develop/soccer-groupman/mod
unity-tech-cn:/develop/soccer-groupman/mod/hunter
unity-tech-cn:/develop/soccer-groupman/mod/hunter/cine
unity-tech-cn:/ai-hw-2021/tensor-applier
此合并请求有变更与目标分支冲突。
/Project/ProjectSettings/TagManager.asset
/Project/ProjectSettings/GraphicsSettings.asset
/Project/ProjectSettings/DynamicsManager.asset
/Project/ProjectSettings/ProjectVersion.txt
/Project/Assets/ML-Agents/Examples/GridWorld/Prefabs/Area.prefab
/Project/Assets/ML-Agents/Examples/FoodCollector/Scripts/FoodCollectorAgent.cs
/Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector.unity
/Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/FoodCollectorArea.prefab
/Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/VisualFoodCollectorArea.prefab
/com.unity.ml-agents/Editor/CameraSensorComponentEditor.cs
/com.unity.ml-agents/Runtime/Sensors/CameraSensor.cs
/com.unity.ml-agents/Runtime/Sensors/CameraSensorComponent.cs
/ml-agents-envs/mlagents_envs/rpc_utils.py
/config/ppo/VisualFoodCollector.yaml
/Project/Assets/ML-Agents/Examples/GridWorld/Prefabs/goal.prefab
/Project/Assets/ML-Agents/Examples/GridWorld/Prefabs/pit.prefab
3 次代码提交
作者 | SHA1 | 备注 | 提交日期 |
---|---|---|---|
Jonathan Harper | 7656f419 | More experimentation | 4 年前 |
Jonathan Harper | 4e7a1170 | Adding training configs | 5 年前 |
Jonathan Harper | 5906cd61 |
WIP dump - working prototype
Updates to CameraSensor / CameraSensorComponent: * new settings object to set up layer masks, depth, etc * support for arbitrary # channels returned by the sensor * channels include depth, layer mask, RGB, or grayscale Updates to VisualFoodCollector: * food doesn't roll (for now), simplifies learning without stacking * added layers Updates to mlagents_envs: * decode multiple pngs packed into a single observation |
5 年前 |
共有 42 个文件被更改,包括 8062 次插入 和 940 次删除
-
28ml-agents-envs/mlagents_envs/rpc_utils.py
-
24Project/Assets/ML-Agents/Examples/GridWorld/Prefabs/Area.prefab
-
318Project/Assets/ML-Agents/Examples/GridWorld/Prefabs/goal.prefab
-
326Project/Assets/ML-Agents/Examples/GridWorld/Prefabs/pit.prefab
-
96Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/BadFood.prefab
-
96Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/Food.prefab
-
71Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/FoodCollectorArea.prefab
-
863Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/VisualFoodCollectorArea.prefab
-
808Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector.unity
-
2Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector.unity.meta
-
4Project/Assets/ML-Agents/Examples/FoodCollector/Scripts/FoodCollectorAgent.cs
-
16Project/ProjectSettings/TagManager.asset
-
2Project/ProjectSettings/ProjectVersion.txt
-
2Project/ProjectSettings/DynamicsManager.asset
-
11Project/ProjectSettings/EditorBuildSettings.asset
-
1Project/ProjectSettings/GraphicsSettings.asset
-
1com.unity.ml-agents/Editor/CameraSensorComponentEditor.cs
-
24com.unity.ml-agents/Runtime/Sensors/CameraSensorComponent.cs
-
484com.unity.ml-agents/Runtime/Sensors/CameraSensor.cs
-
1001Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector-hackweekbackup.unity
-
7Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector-hackweekbackup.unity.meta
-
1001Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector-segmented.unity
-
7Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector-segmented.unity.meta
-
1001Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-autoseg-linux-1.nn
-
11Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-autoseg-linux-1.nn.meta
-
1001Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-autoseg-linux-2.nn
-
11Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-autoseg-linux-2.nn.meta
-
1001Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-depthfood-1agent3.nn
-
11Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-depthfood-1agent3.nn.meta
-
105com.unity.ml-agents/Editor/CameraSensorSettingsDrawer.cs
-
3com.unity.ml-agents/Editor/CameraSensorSettingsDrawer.cs.meta
-
8com.unity.ml-agents/Runtime/Shaders.meta
-
37com.unity.ml-agents/Runtime/Sensors/CameraSensorSettings.cs
-
3com.unity.ml-agents/Runtime/Sensors/CameraSensorSettings.cs.meta
-
3com.unity.ml-agents/Runtime/Sensors/ColorEncoding.cs.meta
-
85com.unity.ml-agents/Runtime/Sensors/ColorEncoding.cs
-
28config/sac/VisualFoodCollector.yaml
-
26config/ppo/VisualFoodCollector.yaml
-
26config/ppo/VisualFoodCollector-linuxworking.yaml
-
440com.unity.ml-agents/Runtime/Shaders/UberReplacement.shader
-
9com.unity.ml-agents/Runtime/Shaders/UberReplacement.shader.meta
863
Project/Assets/ML-Agents/Examples/FoodCollector/Prefabs/VisualFoodCollectorArea.prefab
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: dbc5c542957ef47bd8ebe87fc1000c37 |
|||
guid: f20e977ac950e415792850aabc6c6812 |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|
|||
m_EditorVersion: 2018.4.17f1 |
|||
m_EditorVersion: 2018.4.18f1 |
1001
Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector-hackweekbackup.unity
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: 269b9915616d54f788f7a6d7b86cf5a0 |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
1001
Project/Assets/ML-Agents/Examples/FoodCollector/Scenes/VisualFoodCollector-segmented.unity
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: 9aef3dc1213244eb7baca088b43649cf |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
1001
Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-autoseg-linux-1.nn
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: 1fdb1c796f9f942dfb458ab95b2f74e2 |
|||
ScriptedImporter: |
|||
fileIDToRecycleName: |
|||
11400000: main obj |
|||
11400002: model data |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3} |
1001
Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-autoseg-linux-2.nn
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: 3323fafb8b6b84159b4bc0b81dfddd13 |
|||
ScriptedImporter: |
|||
fileIDToRecycleName: |
|||
11400000: main obj |
|||
11400002: model data |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3} |
1001
Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/VisualFoodCollector-depthfood-1agent3.nn
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
fileFormatVersion: 2 |
|||
guid: d0ba90886892941509b7782249943202 |
|||
ScriptedImporter: |
|||
fileIDToRecycleName: |
|||
11400000: main obj |
|||
11400002: model data |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3} |
|
|||
using Unity.MLAgents.Sensors; |
|||
using UnityEditor; |
|||
using UnityEngine; |
|||
|
|||
namespace Unity.MLAgents.Editor |
|||
{ |
|||
/// <summary>
|
|||
/// PropertyDrawer for BrainParameters. Defines how BrainParameters are displayed in the
|
|||
/// Inspector.
|
|||
/// </summary>
|
|||
[CustomPropertyDrawer(typeof(CameraSensorSettings))] |
|||
internal class CameraSensorSettingsDrawer : PropertyDrawer |
|||
{ |
|||
// The height of a line in the Unity Inspectors
|
|||
const float k_LineHeight = 17f; |
|||
const string k_LayerMasksPropName = "LayerMasks"; |
|||
const string k_DisableCameraPropName = "DisableCamera"; |
|||
const string k_EnableDepthPropName = "EnableDepth"; |
|||
const string k_EnableAutoSegmentPropName = "EnableAutoSegment"; |
|||
|
|||
public override float GetPropertyHeight(SerializedProperty property, GUIContent label) |
|||
{ |
|||
return GetHeightDrawLayerMasks(property) + 4 * k_LineHeight; |
|||
} |
|||
|
|||
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) |
|||
{ |
|||
var indent = EditorGUI.indentLevel; |
|||
position.height = k_LineHeight; |
|||
EditorGUI.BeginProperty(position, label, property); |
|||
|
|||
var disableCamProp = property.FindPropertyRelative(k_DisableCameraPropName); |
|||
EditorGUI.PropertyField(position, disableCamProp, new GUIContent("Disable camera")); |
|||
position.y += k_LineHeight; |
|||
|
|||
var enableDepthProp = property.FindPropertyRelative(k_EnableDepthPropName); |
|||
EditorGUI.PropertyField(position, enableDepthProp, new GUIContent("Enable depth channel")); |
|||
position.y += k_LineHeight; |
|||
|
|||
var enableAutoSegmentProp = property.FindPropertyRelative(k_EnableAutoSegmentPropName); |
|||
EditorGUI.PropertyField(position, enableAutoSegmentProp, new GUIContent("Enable auto segment")); |
|||
position.y += k_LineHeight; |
|||
|
|||
// Vector Observations
|
|||
DrawLayerMasks(position, property); |
|||
position.y += GetHeightDrawLayerMasks(property); |
|||
|
|||
EditorGUI.EndProperty(); |
|||
EditorGUI.indentLevel = indent; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// Draws the Layer Masks for the CameraSensorComponent
|
|||
/// </summary>
|
|||
/// <param name="position">Rectangle on the screen to use for the property GUI.</param>
|
|||
/// <param name="property">The SerializedProperty of the CameraSensorComponent
|
|||
/// to make the custom GUI for.</param>
|
|||
static void DrawLayerMasks(Rect position, SerializedProperty property) |
|||
{ |
|||
var layerMasksProp = property.FindPropertyRelative(k_LayerMasksPropName); |
|||
var newSize = EditorGUI.IntField( |
|||
position, |
|||
"# Layer Masks", |
|||
layerMasksProp.arraySize |
|||
); |
|||
|
|||
// This check is here due to:
|
|||
// https://fogbugz.unity3d.com/f/cases/1246524/
|
|||
// If this case has been resolved, please remove this if condition.
|
|||
if (newSize != layerMasksProp.arraySize) |
|||
{ |
|||
layerMasksProp.arraySize = newSize; |
|||
} |
|||
|
|||
position.y += k_LineHeight; |
|||
position.x += 20; |
|||
position.width -= 20; |
|||
for (var branchIndex = 0; |
|||
branchIndex < layerMasksProp.arraySize; |
|||
branchIndex++) |
|||
{ |
|||
var layerMask = |
|||
layerMasksProp.GetArrayElementAtIndex(branchIndex); |
|||
|
|||
var newMaskLayer = EditorGUI.LayerField( |
|||
position, |
|||
new GUIContent("Mask " + branchIndex + " layer number:", |
|||
"Layer number for layer mask " + branchIndex + "."), |
|||
layerMask.intValue |
|||
); |
|||
if (layerMask.intValue != newMaskLayer) |
|||
{ |
|||
layerMask.intValue = newMaskLayer; |
|||
} |
|||
position.y += k_LineHeight; |
|||
} |
|||
} |
|||
|
|||
static float GetHeightDrawLayerMasks(SerializedProperty property) |
|||
{ |
|||
var layerMasksProp = property.FindPropertyRelative(k_LayerMasksPropName); |
|||
return (1 + layerMasksProp.arraySize) * k_LineHeight; |
|||
} |
|||
} |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: 10f930409af6449fa72f05801f08cfb6 |
|||
timeCreated: 1592871661 |
|
|||
fileFormatVersion: 2 |
|||
guid: b5af96abaf69d4ed2956e12ef0bf7e8f |
|||
folderAsset: yes |
|||
DefaultImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|
|||
using System; |
|||
|
|||
namespace Unity.MLAgents.Sensors |
|||
{ |
|||
[Serializable] |
|||
public class CameraSensorSettings |
|||
{ |
|||
/// <summary>
|
|||
/// Whether to disable sensor reporting back the raw pixels from the camera.
|
|||
/// </summary>
|
|||
/// <remarks>
|
|||
/// This may be useful if using depth, layer masks, etc. if the raw pixels from the camera
|
|||
/// would be redundant.
|
|||
/// </remarks>
|
|||
public bool DisableCamera; |
|||
|
|||
/// <summary>
|
|||
/// Whether to add a depth field channel to the sensor.
|
|||
/// </summary>
|
|||
public bool EnableDepth; |
|||
|
|||
/// <summary>
|
|||
/// Whether to enable automatic segmentation by layer
|
|||
/// </summary>
|
|||
public bool EnableAutoSegment; |
|||
|
|||
/// <summary>
|
|||
/// The list of Unity Layers to render masks for.
|
|||
/// </summary>
|
|||
/// <remarks>
|
|||
/// In addition to RGB, Grayscale, or other image channels, we provide "layer masks" as
|
|||
/// a way to explicitly capture whether objects in a certain Unity Layer fall within each
|
|||
/// pixel.
|
|||
/// </remarks>
|
|||
public int[] LayerMasks = {}; |
|||
} |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: f02d656dd2124d339fd2056ca0f26839 |
|||
timeCreated: 1592871589 |
|
|||
fileFormatVersion: 2 |
|||
guid: e3d8e3ee929e4029af6d000dbc7ca686 |
|||
timeCreated: 1592847947 |
|
|||
using UnityEngine; |
|||
|
|||
namespace Unity.MLAgents.Sensors |
|||
{ |
|||
|
|||
public class ColorEncoding |
|||
{ |
|||
public static byte ReverseBits(byte value) |
|||
{ |
|||
return (byte)((value * 0x0202020202 & 0x010884422010) % 1023); |
|||
} |
|||
|
|||
public static int SparsifyBits(byte value, int sparse) |
|||
{ |
|||
int retVal = 0; |
|||
for (int bits = 0; bits < 8; bits++, value >>= 1) |
|||
{ |
|||
retVal |= (value & 1); |
|||
retVal <<= sparse; |
|||
} |
|||
return retVal >> sparse; |
|||
} |
|||
|
|||
public static Color EncodeIDAsColor(int instanceId) |
|||
{ |
|||
var uid = instanceId * 2; |
|||
if (uid < 0) |
|||
uid = -uid + 1; |
|||
|
|||
var sid = |
|||
(SparsifyBits((byte)(uid >> 16), 3) << 2) | |
|||
(SparsifyBits((byte)(uid >> 8), 3) << 1) | |
|||
SparsifyBits((byte)(uid ), 3); |
|||
//Debug.Log(uid + " >>> " + System.Convert.ToString(sid, 2).PadLeft(24, '0'));
|
|||
|
|||
var r = (byte)(sid >> 8); |
|||
var g = (byte)(sid >> 16); |
|||
var b = (byte)(sid); |
|||
|
|||
//Debug.Log(r + " " + g + " " + b);
|
|||
return new Color32 (r, g, b, 255); |
|||
} |
|||
|
|||
public static Color EncodeTagAsColor(string tag) |
|||
{ |
|||
var hash = tag.GetHashCode(); |
|||
var a = (byte)(hash >> 24); |
|||
var r = (byte)(hash >> 16); |
|||
var g = (byte)(hash >> 8); |
|||
var b = (byte)(hash); |
|||
return new Color32 (r, g, b, a); |
|||
} |
|||
|
|||
public static Color EncodeLayerAsColor(int layer) |
|||
{ |
|||
// Following value must be in the range (0.5 .. 1.0)
|
|||
// in order to avoid color overlaps when using 'divider' in this func
|
|||
var z = .7f; |
|||
|
|||
// First 8 layers are Unity Builtin layers
|
|||
// Unity supports up to 32 layers in total
|
|||
|
|||
// Lets create palette of unique 16 colors
|
|||
var uniqueColors = new []{ |
|||
new Color(1,1,1,1), new Color(z,z,z,1), // 0
|
|||
new Color(1,1,z,1), new Color(1,z,1,1), new Color(z,1,1,1), //
|
|||
new Color(1,z,0,1), new Color(z,0,1,1), new Color(0,1,z,1), // 7
|
|||
|
|||
new Color(1,0,0,1), new Color(0,1,0,1), new Color(0,0,1,1), // 8
|
|||
new Color(1,1,0,1), new Color(1,0,1,1), new Color(0,1,1,1), //
|
|||
new Color(1,z,z,1), new Color(z,1,z,1) // 15
|
|||
}; |
|||
|
|||
// Create as many colors as necessary by using base 16 color palette
|
|||
// To create more than 16 - will simply adjust brightness with 'divider'
|
|||
var color = uniqueColors[layer % uniqueColors.Length]; |
|||
var divider = 1.0f + Mathf.Floor(layer / uniqueColors.Length); |
|||
color /= divider; |
|||
|
|||
return color; |
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|
|||
behaviors: |
|||
VisualFoodCollector: |
|||
trainer_type: sac |
|||
hyperparameters: |
|||
learning_rate: 0.0003 |
|||
learning_rate_schedule: constant |
|||
batch_size: 256 |
|||
buffer_size: 100000 |
|||
buffer_init_steps: 20000 |
|||
tau: 0.005 |
|||
steps_per_update: 10.0 |
|||
save_replay_buffer: false |
|||
init_entcoef: 0.05 |
|||
reward_signal_steps_per_update: 10.0 |
|||
network_settings: |
|||
normalize: false |
|||
hidden_units: 128 |
|||
num_layers: 2 |
|||
vis_encode_type: nature_cnn |
|||
reward_signals: |
|||
extrinsic: |
|||
gamma: 0.99 |
|||
strength: 1.0 |
|||
keep_checkpoints: 5 |
|||
max_steps: 2000000 |
|||
time_horizon: 64 |
|||
summary_freq: 10000 |
|||
threaded: true |
|
|||
behaviors: |
|||
VisualFoodCollector: |
|||
trainer_type: ppo |
|||
hyperparameters: |
|||
batch_size: 1024 |
|||
buffer_size: 10240 |
|||
learning_rate: 0.0003 |
|||
beta: 0.005 |
|||
epsilon: 0.2 |
|||
lambd: 0.95 |
|||
num_epoch: 3 |
|||
learning_rate_schedule: constant |
|||
network_settings: |
|||
normalize: false |
|||
hidden_units: 128 |
|||
num_layers: 2 |
|||
vis_encode_type: simple |
|||
reward_signals: |
|||
extrinsic: |
|||
gamma: 0.99 |
|||
strength: 1.0 |
|||
keep_checkpoints: 5 |
|||
max_steps: 2000000 |
|||
time_horizon: 64 |
|||
summary_freq: 10000 |
|||
threaded: true |
|
|||
behaviors: |
|||
VisualFoodCollector: |
|||
trainer_type: ppo |
|||
hyperparameters: |
|||
batch_size: 500 |
|||
buffer_size: 5000 |
|||
learning_rate: 0.0003 |
|||
beta: 0.005 |
|||
epsilon: 0.2 |
|||
lambd: 0.95 |
|||
num_epoch: 3 |
|||
learning_rate_schedule: linear |
|||
network_settings: |
|||
normalize: false |
|||
hidden_units: 128 |
|||
num_layers: 2 |
|||
vis_encode_type: simple |
|||
reward_signals: |
|||
extrinsic: |
|||
gamma: 0.99 |
|||
strength: 1.0 |
|||
keep_checkpoints: 5 |
|||
max_steps: 10000000 |
|||
time_horizon: 100 |
|||
summary_freq: 40000 |
|||
threaded: true |
|
|||
// Based on builtin Internal-DepthNormalsTexture.shader |
|||
// EncodeDepthNormal() is replaced with custom Output() function |
|||
|
|||
Shader "Hidden/UberReplacement" { |
|||
Properties { |
|||
_MainTex ("", 2D) = "white" {} |
|||
_Cutoff ("", Float) = 0.5 |
|||
_Color ("", Color) = (1,1,1,1) |
|||
|
|||
_ObjectColor ("Object Color", Color) = (1,1,1,1) |
|||
_CategoryColor ("Category Color", Color) = (0,1,0,1) |
|||
_LayerNumber ("Layer Number", int) = -1 |
|||
} |
|||
|
|||
SubShader { |
|||
CGINCLUDE |
|||
|
|||
fixed4 _ObjectColor; |
|||
fixed4 _CategoryColor; |
|||
int _LayerNumber; |
|||
int _OutputMode; |
|||
|
|||
// remap depth: [0 @ eye .. 1 @ far] => [0 @ near .. 1 @ far] |
|||
inline float Linear01FromEyeToLinear01FromNear(float depth01) |
|||
{ |
|||
float near = _ProjectionParams.y; |
|||
float far = _ProjectionParams.z; |
|||
return (depth01 - near/far) * (1 + near/far); |
|||
} |
|||
|
|||
float4 Output(float depth01, float3 normal) |
|||
{ |
|||
if (_OutputMode == 0) // ObjectId |
|||
{ |
|||
return _ObjectColor; |
|||
} |
|||
else if (_OutputMode == 1) // CategoryId |
|||
{ |
|||
return _CategoryColor; |
|||
} |
|||
else if (_OutputMode == 2) // DepthCompressed |
|||
{ |
|||
float linearZFromNear = Linear01FromEyeToLinear01FromNear(depth01); |
|||
float k = 0.25; // compression factor |
|||
return pow(linearZFromNear, k); |
|||
} |
|||
else if (_OutputMode == 3) // Layers |
|||
{ |
|||
return float4(_LayerNumber / 100.0, 0.0, 0.0, 1); |
|||
} |
|||
|
|||
// unsupported _OutputMode |
|||
return float4(1, 0.5, 0.5, 1); |
|||
} |
|||
ENDCG |
|||
|
|||
// Support for different RenderTypes |
|||
// The following code is based on builtin Internal-DepthNormalsTexture.shader |
|||
|
|||
Tags { "RenderType"="Opaque" } |
|||
Pass { |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float4 nz : TEXCOORD0; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
v2f vert( appdata_base v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="TransparentCutout" } |
|||
Pass { |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
uniform float4 _MainTex_ST; |
|||
v2f vert( appdata_base v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = TRANSFORM_TEX(v.texcoord, _MainTex); |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
uniform fixed _Cutoff; |
|||
uniform fixed4 _Color; |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
fixed4 texcol = tex2D( _MainTex, i.uv ); |
|||
clip( texcol.a*_Color.a - _Cutoff ); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="TreeBark" } |
|||
Pass { |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "Lighting.cginc" |
|||
#include "UnityBuiltin3xTreeLibrary.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
v2f vert( appdata_full v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
TreeVertBark(v); |
|||
|
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = v.texcoord.xy; |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
fixed4 frag( v2f i ) : SV_Target { |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="TreeLeaf" } |
|||
Pass { |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "Lighting.cginc" |
|||
#include "UnityBuiltin3xTreeLibrary.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
v2f vert( appdata_full v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
TreeVertLeaf(v); |
|||
|
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = v.texcoord.xy; |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
uniform fixed _Cutoff; |
|||
fixed4 frag( v2f i ) : SV_Target { |
|||
half alpha = tex2D(_MainTex, i.uv).a; |
|||
|
|||
clip (alpha - _Cutoff); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="TreeOpaque" "DisableBatching"="True" } |
|||
Pass { |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "TerrainEngine.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float4 nz : TEXCOORD0; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
struct appdata { |
|||
float4 vertex : POSITION; |
|||
float3 normal : NORMAL; |
|||
fixed4 color : COLOR; |
|||
UNITY_VERTEX_INPUT_INSTANCE_ID |
|||
}; |
|||
v2f vert( appdata v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
TerrainAnimateTree(v.vertex, v.color.w); |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="TreeTransparentCutout" "DisableBatching"="True" } |
|||
Pass { |
|||
Cull Back |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "TerrainEngine.cginc" |
|||
|
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
struct appdata { |
|||
float4 vertex : POSITION; |
|||
float3 normal : NORMAL; |
|||
fixed4 color : COLOR; |
|||
float4 texcoord : TEXCOORD0; |
|||
UNITY_VERTEX_INPUT_INSTANCE_ID |
|||
}; |
|||
v2f vert( appdata v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
TerrainAnimateTree(v.vertex, v.color.w); |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = v.texcoord.xy; |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
uniform fixed _Cutoff; |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
half alpha = tex2D(_MainTex, i.uv).a; |
|||
|
|||
clip (alpha - _Cutoff); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
Pass { |
|||
Cull Front |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "TerrainEngine.cginc" |
|||
|
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
struct appdata { |
|||
float4 vertex : POSITION; |
|||
float3 normal : NORMAL; |
|||
fixed4 color : COLOR; |
|||
float4 texcoord : TEXCOORD0; |
|||
UNITY_VERTEX_INPUT_INSTANCE_ID |
|||
}; |
|||
v2f vert( appdata v ) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
TerrainAnimateTree(v.vertex, v.color.w); |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = v.texcoord.xy; |
|||
o.nz.xyz = -COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
uniform fixed _Cutoff; |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
fixed4 texcol = tex2D( _MainTex, i.uv ); |
|||
clip( texcol.a - _Cutoff ); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
|
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="TreeBillboard" } |
|||
Pass { |
|||
Cull Off |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "TerrainEngine.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
v2f vert (appdata_tree_billboard v) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
TerrainBillboardTree(v.vertex, v.texcoord1.xy, v.texcoord.y); |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv.x = v.texcoord.x; |
|||
o.uv.y = v.texcoord.y > 0; |
|||
o.nz.xyz = float3(0,0,1); |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
fixed4 texcol = tex2D( _MainTex, i.uv ); |
|||
clip( texcol.a - 0.001 ); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="GrassBillboard" } |
|||
Pass { |
|||
Cull Off |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "TerrainEngine.cginc" |
|||
|
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
fixed4 color : COLOR; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
|
|||
v2f vert (appdata_full v) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
WavingGrassBillboardVert (v); |
|||
o.color = v.color; |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = v.texcoord.xy; |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
uniform fixed _Cutoff; |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
fixed4 texcol = tex2D( _MainTex, i.uv ); |
|||
fixed alpha = texcol.a * i.color.a; |
|||
clip( alpha - _Cutoff ); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
|
|||
SubShader { |
|||
Tags { "RenderType"="Grass" } |
|||
Pass { |
|||
Cull Off |
|||
CGPROGRAM |
|||
#pragma vertex vert |
|||
#pragma fragment frag |
|||
#include "UnityCG.cginc" |
|||
#include "TerrainEngine.cginc" |
|||
struct v2f { |
|||
float4 pos : SV_POSITION; |
|||
fixed4 color : COLOR; |
|||
float2 uv : TEXCOORD0; |
|||
float4 nz : TEXCOORD1; |
|||
UNITY_VERTEX_OUTPUT_STEREO |
|||
}; |
|||
|
|||
v2f vert (appdata_full v) { |
|||
v2f o; |
|||
UNITY_SETUP_INSTANCE_ID(v); |
|||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); |
|||
WavingGrassVert (v); |
|||
o.color = v.color; |
|||
o.pos = UnityObjectToClipPos(v.vertex); |
|||
o.uv = v.texcoord; |
|||
o.nz.xyz = COMPUTE_VIEW_NORMAL; |
|||
o.nz.w = COMPUTE_DEPTH_01; |
|||
return o; |
|||
} |
|||
uniform sampler2D _MainTex; |
|||
uniform fixed _Cutoff; |
|||
fixed4 frag(v2f i) : SV_Target { |
|||
fixed4 texcol = tex2D( _MainTex, i.uv ); |
|||
fixed alpha = texcol.a * i.color.a; |
|||
clip( alpha - _Cutoff ); |
|||
return Output (i.nz.w, i.nz.xyz); |
|||
} |
|||
ENDCG |
|||
} |
|||
} |
|||
Fallback Off |
|||
} |
|
|||
fileFormatVersion: 2 |
|||
guid: 3ffefcbf3b7a34356bd15ac448c73d3e |
|||
ShaderImporter: |
|||
externalObjects: {} |
|||
defaultTextures: [] |
|||
nonModifiableTextures: [] |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
撰写
预览
正在加载...
取消
保存
Reference in new issue