Compare commits
956 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 07afb0a020 | |||
| 5e6f33ff1e | |||
| fcf412f64e | |||
| 2a4a283c4b | |||
| b2f7ffa545 | |||
| 127c575752 | |||
| 9df7489727 | |||
| 12b330e4ec | |||
| 9b74effe22 | |||
| 96e1f1e595 | |||
| 48a2ca5fe9 | |||
| b5558606b5 | |||
| 8003c30ed6 | |||
| b57cb13318 | |||
| 79dbddc48e | |||
| 2df70f16f9 | |||
| 68e04ca7e4 | |||
| 037ad94ae7 | |||
| 34aff4a2b6 | |||
| eab5ee93b9 | |||
| bef4ba1829 | |||
| 3b797ab1dc | |||
| b6aa38569f | |||
| 55d721f425 | |||
| 9429be0830 | |||
| 0d813aee90 | |||
| 5a7f678e4d | |||
| dc04d3dc0b | |||
| 7a5d84a216 | |||
| fe97429df8 | |||
| e644b65289 | |||
| 5911d098d1 | |||
| 8de8f3c1cd | |||
| 4f9d556a76 | |||
| cdde8665c1 | |||
| ef0f0e24a3 | |||
| 8327866205 | |||
| 89d649c049 | |||
| f0061e07b4 | |||
| 3ddaa6da1a | |||
| ffd5c8fd53 | |||
| eb364f51e0 | |||
| f77063f615 | |||
| d3578380e2 | |||
| 05cb02aa09 | |||
| 32565becd8 | |||
| 2f97db306a | |||
| 679757942f | |||
| 5dc63da4bf | |||
| aa1a0ea4a2 | |||
| 8b050cf87e | |||
| 660ecc185b | |||
| c91c690e86 | |||
| 2338e03554 | |||
| ec8df18ee4 | |||
| 74bdcf0749 | |||
| d5cdbdb808 | |||
| 2ea468d5da | |||
| 7dc83b5472 | |||
| 4b08cd3fd7 | |||
| 4af2b9e2a6 | |||
| 611d2d2745 | |||
| f8aa1cd5f8 | |||
| 969053a240 | |||
| 123b7f5433 | |||
| 067b8144ad | |||
| 51604302e2 | |||
| df000bc99e | |||
| ac368863aa | |||
| 8695ba6fdb | |||
| 4fb336bc9e | |||
| 6c249172d4 | |||
| ab3e4afb53 | |||
| 419962ab04 | |||
| 54a056e5c3 | |||
| aad378a43d | |||
| e0f9e6e50f | |||
| 3c9d592d8b | |||
| 3b34ba79cb | |||
| 3218791830 | |||
| a48bfe9c82 | |||
| e7b69dea61 | |||
| 800cdd94e7 | |||
| 5038342384 | |||
| 5060b26dcc | |||
| df8cfdac56 | |||
| 55ea197d4f | |||
| d48f61ea33 | |||
| 7411e69223 | |||
| 0adc0f616e | |||
| d5f93b5c45 | |||
| dbfe640bac | |||
| 8b41c304f1 | |||
| d76d79fcc3 | |||
| bf7af8fa2c | |||
| e40f51cfc5 | |||
| e3cfe9f009 | |||
| c7d6aca2ad | |||
| 47afc7817f | |||
| 752fa64cc3 | |||
| 7d6472a160 | |||
| 835127ac21 | |||
| 77e19e148b | |||
| a70234c9b6 | |||
| 1034a15ddc | |||
| aad2ff51fc | |||
| 0031d9174d | |||
| 705a635059 | |||
| 8184d513e3 | |||
| 19c24e2a4d | |||
| cb83de4769 | |||
| 46cfa01622 | |||
| 4725a83406 | |||
| b4cce7db00 | |||
| e3a96fa724 | |||
| 6b634322ff | |||
| cc4864231f | |||
| 7fe7742430 | |||
| 9c98d9d01e | |||
| 6fb1e749bc | |||
| d58a77cc60 | |||
| 9b6ba67186 | |||
| 57178b8a5b | |||
| e9fa76c34a | |||
| a099bd25f6 | |||
| c785a17ca8 | |||
| 9197d583ce | |||
| 07ca64c8a0 | |||
| 07892ccf18 | |||
| b4ea70acbb | |||
| b8a7f36c85 | |||
| 82823d6945 | |||
| 12cb8fd59d | |||
| 39443bf4d1 | |||
| 3636cd6940 | |||
| 45866e6771 | |||
| 7b253311a0 | |||
| 73ac1c5d43 | |||
| e08713707b | |||
| 48d8e3bb24 | |||
| 8b6c3b2f5d | |||
| 78001b8298 | |||
| bd513eabc6 | |||
| 7fae0d9fb6 | |||
| bc4514c905 | |||
| c99525131a | |||
| d09dfd1f61 | |||
| ca81ee3967 | |||
| 533a6576b8 | |||
| 0366de36ce | |||
| d92da5ceba | |||
| 9bb8dcac3d | |||
| 8c13c64088 | |||
| 7a2023ead6 | |||
| e02c4b6f98 | |||
| b71665ae0d | |||
| 9a84811f35 | |||
| daff3abdc1 | |||
| a175e58107 | |||
| 4b9bbfb663 | |||
| d5d5fb698f | |||
| e09ad39161 | |||
| b4087452d1 | |||
| c6ad0fc337 | |||
| c878c613c7 | |||
| 5c78e0d466 | |||
| 0f38fdda30 | |||
| e4afc49ac6 | |||
| ac45bbe53e | |||
| ea153d4cf6 | |||
| f085e8e199 | |||
| c09afe55a3 | |||
| c51a923160 | |||
| 591b45d2e8 | |||
| 19eaec336d | |||
| b113bdb774 | |||
| 03f299bc3b | |||
| 9c591b3c08 | |||
| a061347f5a | |||
| ffbd34c95a | |||
| 847a28d133 | |||
| 0ac5db45d1 | |||
| 2703401f08 | |||
| f4da984399 | |||
| d8a9b699ad | |||
| 873749b130 | |||
| 58e99ca469 | |||
| b84cb8428b | |||
| d9f1e4253f | |||
| cb867e7657 | |||
| b959ecd671 | |||
| 9c8f0c571d | |||
| 7c176f4b69 | |||
| 73ec370989 | |||
| aa8d6f7c79 | |||
| d7595f1ecc | |||
| 50faa49c0f | |||
| b64475bcfa | |||
| 36ba1d9953 | |||
| 2592841793 | |||
| b862126209 | |||
| ade0450c0e | |||
| baabc5d16f | |||
| ee19c8e856 | |||
| 45a30990ba | |||
| ab51ecddb4 | |||
| 836f72481b | |||
| 831af77eff | |||
| b071cdb843 | |||
| a0c6add732 | |||
| b93e97dd76 | |||
| 8c5d421c45 | |||
| 0709288eac | |||
| c46ea56af2 | |||
| c39d1283f8 | |||
| c9fce7e4aa | |||
| 5a30883082 | |||
| 9b3d15aa46 | |||
| 56c16c7078 | |||
| 238095b862 | |||
| a219a3d2eb | |||
| b0bc1fa310 | |||
| 6f8aee0c1c | |||
| 4d9ffdb025 | |||
| a214c14a4d | |||
| 87549a3e6c | |||
| db46d50eff | |||
| adfe3ad165 | |||
| 82e9923be3 | |||
| 0461a78cdb | |||
| 997baa3b77 | |||
| e57481de7d | |||
| 6931161dce | |||
| 9fe4de811b | |||
| bde3b98582 | |||
| 617752ac34 | |||
| 29815e0dd6 | |||
| 03813259cf | |||
| 8e87ce6436 | |||
| 1a8f3d0e97 | |||
| c1e0d70646 | |||
| bc7f9f7534 | |||
| 9e90cb260a | |||
| c854b657c1 | |||
| a72fbc00bb | |||
| 1a0b38bbfe | |||
| a853850116 | |||
| ff3277edc7 | |||
| e21c8e5fe9 | |||
| 66fd5e716c | |||
| 634eb0973b | |||
| a91990138b | |||
| d752fcb127 | |||
| 66d5850a76 | |||
| df2d151063 | |||
| 31e27e84a9 | |||
| a7bccae5d3 | |||
| 286de25c15 | |||
| 5d601621cf | |||
| 56c9be6f8c | |||
| 64dcfa21b8 | |||
| 6c1ce82e5c | |||
| efe11d0105 | |||
| 85df496657 | |||
| d20bce9967 | |||
| f110926288 | |||
| fb12e63bb1 | |||
| 8669a291fb | |||
| c1c1f5d60e | |||
| 720dbabae1 | |||
| eaa63e679e | |||
| 689a042e88 | |||
| 04727cf2bc | |||
| ec2bdb7437 | |||
| df997c8e3c | |||
| 15fd2e884e | |||
| e2e7facad0 | |||
| 0abac8c5c4 | |||
| ee5a7cf1ef | |||
| fc65e5a7a6 | |||
| 99ce5cd4d4 | |||
| 4395bfd661 | |||
| 5babe8df3f | |||
| 5dd91d0cdc | |||
| 831fc80971 | |||
| eff24ed836 | |||
| 07e653468f | |||
| a2af46845d | |||
| 1e98fe2920 | |||
| 675aa92b53 | |||
| e40cdc8a7f | |||
| 50100a74bb | |||
| b89f2e39c9 | |||
| 0aec1340b2 | |||
| 3622b77034 | |||
| 7e62765a09 | |||
| ed3dd93a17 | |||
| 1d244f6689 | |||
| 1421e63aa8 | |||
| 50fb39d238 | |||
| f127bbebe1 | |||
| 20d8c9f4ee | |||
| 87e69ca564 | |||
| 5c1d89b145 | |||
| 595d2235d3 | |||
| 38fc43cada | |||
| e8c8021fd5 | |||
| da63e843d8 | |||
| a450990ee2 | |||
| bfae240209 | |||
| 0fa58531e8 | |||
| 45c363685d | |||
| 8e354cc36e | |||
| 9eb0562844 | |||
| 26c7d3dadc | |||
| 986fa13585 | |||
| aa8ab65ae0 | |||
| 2d44ae3a4d | |||
| 810f7fb803 | |||
| a7e428a21c | |||
| 9626e9bbb6 | |||
| e7f40a4c0e | |||
| 6b076e4fd4 | |||
| 79864ffd5f | |||
| 4d6f758994 | |||
| 442641eeab | |||
| ca2e2e1f41 | |||
| a74b847e65 | |||
| 17f9219cd0 | |||
| 0595f38fe4 | |||
| e2aa6b8970 | |||
| 67c63f1410 | |||
| 70cce0e1ee | |||
| 8c9a3055e1 | |||
| 0cd562c528 | |||
| 4c671012bf | |||
| 8db75ffa36 | |||
| 58844622a0 | |||
| cfcf29a62e | |||
| 064994eb1a | |||
| c011e8af62 | |||
| b753b18682 | |||
| 4012434102 | |||
| b4faa128b7 | |||
| 9ffeb8031b | |||
| 59568fb5c8 | |||
| bc7bf72660 | |||
| 4afa59a783 | |||
| 084fe6f063 | |||
| 9554636971 | |||
| f246fc018d | |||
| 2df3574cfa | |||
| c976d190a5 | |||
| 18baab0c64 | |||
| b73bd519be | |||
| 081305fab7 | |||
| a10fb703fc | |||
| 6a46efcf45 | |||
| 0ca8fe2f45 | |||
| a253e01dbd | |||
| 80baa13814 | |||
| 71aae620ea | |||
| 7c3d5d739a | |||
| cf908fcfeb | |||
| f52e76fe30 | |||
| e2e66e0eec | |||
| a5e7ff6fc0 | |||
| 0e1da59f0c | |||
| 1d47374758 | |||
| c6bbfdc7f0 | |||
| 7184566b4b | |||
| 418aeb281c | |||
| 5a1192df16 | |||
| 4b79bcb8d2 | |||
| 5f83918c06 | |||
| da08b18ec5 | |||
| 9d3b8eeeaf | |||
| 607505a316 | |||
| e7cf10aea8 | |||
| 79562dc502 | |||
| 6ef49349ff | |||
| 0633ed6819 | |||
| 6c3864983f | |||
| dc6f6e2b93 | |||
| 63343d4224 | |||
| ca07c18b93 | |||
| b225b5a6e6 | |||
| 45564c940f | |||
| 69d391d985 | |||
| c38da8cabf | |||
| f8e3f2fdc0 | |||
| ae7352831b | |||
| 72bef6bc86 | |||
| 4eb2ac854e | |||
| 7539504a8c | |||
| 0220c8ced1 | |||
| ae700cfbb8 | |||
| 5a5a16c983 | |||
| c35a267cd3 | |||
| 46b65bc546 | |||
| 6f545beffe | |||
| 6e403abf75 | |||
| f297b4b391 | |||
| 16e7c429fc | |||
| 7fcd66588c | |||
| 8762e8ad15 | |||
| 3a393b6825 | |||
| 7859e64db1 | |||
| 163abb107c | |||
| 5c9a27a6d6 | |||
| bdbf931046 | |||
| 320c8481e6 | |||
| cdf50b2560 | |||
| d930e2418f | |||
| 85f7d81ce4 | |||
| 6b0ead59d2 | |||
| 155b463f3f | |||
| 1d359d9ed2 | |||
| 3fdbfab98b | |||
| c2df2acb2c | |||
| 025345d99a | |||
| 601dea6d29 | |||
| c9f4b6e55c | |||
| 1d676314e2 | |||
| 5bccd010cb | |||
| 8735e0d99c | |||
| f007fb494a | |||
| df2e15fe8a | |||
| 31ecc8a49f | |||
| 25028e1d67 | |||
| d8f092b60b | |||
| 9050377526 | |||
| cb6590e7ef | |||
| 2c7a83f8b9 | |||
| 489c7b46ee | |||
| 762f460e23 | |||
| 8c78493a51 | |||
| 9099197a88 | |||
| a2f52edd47 | |||
| bba136c9fe | |||
| fc0befd773 | |||
| 5022e05c25 | |||
| d7d7c1e98f | |||
| 8918c71312 | |||
| 01612f1b47 | |||
| c5e558172d | |||
| 96ec28c9a8 | |||
| 1a11238808 | |||
| dc81147681 | |||
| cbef100a17 | |||
| e6900d9a17 | |||
| 2f6e793df4 | |||
| 0dd79fe10a | |||
| 84f2e652e4 | |||
| 757728c96c | |||
| a570d6d178 | |||
| e725533ba7 | |||
| a468053f46 | |||
| 1c85b30e9f | |||
| 1b919b9fae | |||
| 1cf6c5233e | |||
| 3fcbcacd43 | |||
| 6677177534 | |||
| c3f23d1390 | |||
| af5f3cbd95 | |||
| 86be1acd7a | |||
| b9244df8f7 | |||
| 63e7fb85ec | |||
| 79f4dfcaab | |||
| 713aa3e0f9 | |||
| de79e43fb1 | |||
| c38eda5799 | |||
| 188428a7a9 | |||
| c17477abff | |||
| ee019510ca | |||
| 7eab3fe5b3 | |||
| 8d9e3ded74 | |||
| 48b88af88a | |||
| 516e3fbc65 | |||
| 359e7d68d4 | |||
| d4601ecb44 | |||
| ed700cb070 | |||
| e5742772ae | |||
| a809a69ca0 | |||
| 202de3499f | |||
| 7f0c73606c | |||
| b33ce8d264 | |||
| a45f7a86f2 | |||
| ffc5a4d24f | |||
| 2e055d1909 | |||
| 1a3bcc5d27 | |||
| ad0aadbf29 | |||
| d544c43744 | |||
| 9c2104391b | |||
| df82a0f5d0 | |||
| 95db33e614 | |||
| f81740f28c | |||
| eab775b9a2 | |||
| 9b82860154 | |||
| f2c594569d | |||
| 3017010ef4 | |||
| f426c75696 | |||
| f918fa2a32 | |||
| 5a50656249 | |||
| d5fa2d48db | |||
| 125ce06e4c | |||
| f8734db1e1 | |||
| 7e434932ae | |||
| 7eae439624 | |||
| 5e5d88ed8e | |||
| a0a087fc91 | |||
| b85d58db85 | |||
| 2b6e3cf993 | |||
| df45ac46b1 | |||
| 950289db9f | |||
| 98c29c4a4e | |||
| 6458d7e0db | |||
| f61100deca | |||
| adcffab78a | |||
| eae8fd7ef9 | |||
| 0f19fc64fd | |||
| cfffc76aa6 | |||
| 2968399f2d | |||
| 66d01d8d7f | |||
| 7486bc640f | |||
| 7d6926e19f | |||
| ce228c9003 | |||
| 12f8a15b8b | |||
| 8694d9f9b4 | |||
| a3a001633b | |||
| e4840d35d6 | |||
| e5b4ce06b9 | |||
| a819d657db | |||
| 96742404fd | |||
| 93a0facd93 | |||
| f5ed9292e7 | |||
| ee84d53cdc | |||
| 9e1692e3e0 | |||
| 3f3697fbfa | |||
| 853fa482f6 | |||
| 8bf128dc0a | |||
| 69ad8bc672 | |||
| db6aab1cf6 | |||
| cfb25840f9 | |||
| 64debe08a8 | |||
| 460d0780a1 | |||
| d03363b376 | |||
| de2374ad40 | |||
| 681b873ba6 | |||
| 86431d3d9a | |||
| 4a9a01a89e | |||
| 7cfde78198 | |||
| 3c963330e0 | |||
| cd23f88d36 | |||
| 5bff437640 | |||
| 08c035e7d8 | |||
| 3da7e8d7ba | |||
| 8e52e2fb10 | |||
| 373350df1e | |||
| 835a230323 | |||
| 189575efec | |||
| 39dc439cd8 | |||
| bdb27fef1b | |||
| c33fe04645 | |||
| 8707d658f1 | |||
| b1618a88be | |||
| b4fdb0cc26 | |||
| 66ce8abe01 | |||
| e6251ea4b0 | |||
| f9cb2ece6e | |||
| e713273942 | |||
| 18c4e34af8 | |||
| 63c4eb17e4 | |||
| 5cc66d60dc | |||
| 9076d3b82b | |||
| 6f95f162d0 | |||
| 33910eb310 | |||
| dbcb333ba9 | |||
| 76c1045444 | |||
| 90bf466495 | |||
| b581bf7bac | |||
| caeb999d6a | |||
| 45e2de86a0 | |||
| 2644b4d75a | |||
| 8e41711e82 | |||
| 073bd74b3c | |||
| 62cf8bebd0 | |||
| 2ad6eb0c72 | |||
| 2e46ebea7a | |||
| c55d38534d | |||
| 99c296ff3a | |||
| cae7f34ab2 | |||
| 258b0c777f | |||
| d1d48ec31d | |||
| ae56abc929 | |||
| b3cc973ade | |||
| cbb4b11660 | |||
| 71764eba03 | |||
| 17b7fcde27 | |||
| bcb890eab1 | |||
| 5a6f6d97a7 | |||
| af244718be | |||
| 6397381950 | |||
| c514aad9a3 | |||
| c5d1897acf | |||
| c21c57605a | |||
| 43d70c7fab | |||
| 864d4981ed | |||
| eeff5ea3ae | |||
| 93c0dd704e | |||
| b139ebfe88 | |||
| bed880248c | |||
| 1dfea17bce | |||
| 33e2fa7f9e | |||
| 4f38a87eed | |||
| 54e30c35e9 | |||
| 911ca7f995 | |||
| bdea0930da | |||
| ff8e002d33 | |||
| 26ff8e62eb | |||
| 84bd7da620 | |||
| 1b7a7dc15c | |||
| efb48697fa | |||
| 91ff0f76f8 | |||
| e113d5c549 | |||
| c0f596a00e | |||
| c41d67c4ac | |||
| 16ebc72099 | |||
| 20661fc902 | |||
| 3b4d91924f | |||
| eb281a7574 | |||
| a2670dc3b5 | |||
| ade5166977 | |||
| 68a5073b29 | |||
| 6c26cbe9ba | |||
| de6cd88870 | |||
| 6b4da88ef0 | |||
| 62cd59549d | |||
| 4515844219 | |||
| 6c18ca3f45 | |||
| eab45f0c48 | |||
| b47d95205f | |||
| 881880fc34 | |||
| 72244be201 | |||
| aa978ce0e4 | |||
| 4ba1531cda | |||
| c26e0f5923 | |||
| c73eb548c0 | |||
| 54ccf9edc7 | |||
| 29900a3cc0 | |||
| b02020f801 | |||
| ea5e38fdd1 | |||
| e53623e854 | |||
| 81c13825c5 | |||
| e98621b887 | |||
| 735b07f0d7 | |||
| 81f7f91d73 | |||
| 08f71f4469 | |||
| 299f5e8732 | |||
| ac89b395af | |||
| 3ac77121f5 | |||
| f2170a09cd | |||
| 9c7da16c1a | |||
| 183636289a | |||
| 14f64b5b20 | |||
| 6ace0961b3 | |||
| c817b63927 | |||
| de4d3d97f2 | |||
| 996d38b61d | |||
| e38ab163c4 | |||
| 007a5cb5ca | |||
| 2dca30305f | |||
| 0c9001e3d1 | |||
| b816e2b3a9 | |||
| 957a34866b | |||
| 70cfbada04 | |||
| 043beb03a9 | |||
| 7487b468d3 | |||
| 0f619c2cb6 | |||
| b2a9ee495a | |||
| a1e4400994 | |||
| 949f16fba8 | |||
| 5bd56cae81 | |||
| 6a61b692aa | |||
| 86b6b20200 | |||
| f37ed16270 | |||
| a0a3457733 | |||
| 8a98f466c5 | |||
| 1af0188a3c | |||
| a945e2c2a5 | |||
| a66c72a0c2 | |||
| ec62763e87 | |||
| 5f4aa39263 | |||
| 0898723a45 | |||
| 01a7ae8bd4 | |||
| 1d9f5e8cfe | |||
| 5e81d83648 | |||
| 2475b46375 | |||
| a90de82e45 | |||
| ecfcc88dda | |||
| 77b98f7081 | |||
| 00c5f7d5d4 | |||
| 050635b2cd | |||
| f1b67935b3 | |||
| 00be6ffb89 | |||
| 38d65d38d1 | |||
| ccd830a270 | |||
| e1836a222c | |||
| 7ddc1a1553 | |||
| 5fe1d3f12f | |||
| 76bc412fdd | |||
| 57e812d336 | |||
| 6379171fa6 | |||
| 50414d7fed | |||
| 40a04bc5d6 | |||
| 7535f22b10 | |||
| 4ba93d9d86 | |||
| f67d1412de | |||
| c41248f402 | |||
| 5cfe3b88c7 | |||
| bd562a374a | |||
| 284917796a | |||
| 27ad3c38b7 | |||
| eb52d333ae | |||
| e217d5e79b | |||
| 3c689a4697 | |||
| 4123e4cf69 | |||
| 2c2071285a | |||
| 3f135c832e | |||
| e8d39e706f | |||
| 52e0e70908 | |||
| 28dda32f0e | |||
| bff93de116 | |||
| c89929a940 | |||
| 312d1735ef | |||
| 5e60085371 | |||
| 3ede538fcb | |||
| 5c270810d0 | |||
| 0dec70847f | |||
| 19f1c4251c | |||
| d90245bf32 | |||
| 2c7d2893c8 | |||
| b3eb38009d | |||
| 3f1dba86a3 | |||
| 6a5efdeb29 | |||
| 8a46aec294 | |||
| fd831f569c | |||
| 2297ba3c86 | |||
| cd4d15e0e2 | |||
| 044e141848 | |||
| d73822046f | |||
| 148b15d473 | |||
| 748c58d52e | |||
| a79b642613 | |||
| 616379c54b | |||
| 91663f0202 | |||
| f078499dfb | |||
| 87a0c671f6 | |||
| 8a76d32ded | |||
| 30fdde614d | |||
| 494de7a9f4 | |||
| b8697e7204 | |||
| 479a83fdef | |||
| 437ed07368 | |||
| 771f8ad02b | |||
| 56c9ed3197 | |||
| 1ef16fde92 | |||
| b7b31aad8e | |||
| 2b514cc10e | |||
| 5cff11ce4a | |||
| 6f380a6f12 | |||
| 0ec76d678d | |||
| f29d779425 | |||
| 1fb19ee023 | |||
| 124c287537 | |||
| c43de26d83 | |||
| 3cb37bf7b0 | |||
| 0b461f05ca | |||
| 13be6b75f2 | |||
| 7636108844 | |||
| 1914fa519d | |||
| bfe51d6555 | |||
| 5341e355ce | |||
| de012a23ee | |||
| 108b13fd0d | |||
| 1c0f2f2b81 | |||
| 0a17ff3b3a | |||
| d89e31d155 | |||
| 5e5abcdc3f | |||
| 0422efcf03 | |||
| 70c53a4f67 | |||
| c6523ed9cd | |||
| 2a7e59ae5d | |||
| edf339a942 | |||
| b3bb860195 | |||
| 9bd13c8ed5 | |||
| 1c44c42b52 | |||
| ef77cdfe3f | |||
| 727d29ee07 | |||
| 52b1b19b02 | |||
| 8b446edc06 | |||
| 42d1f40b9c | |||
| b7b4391cff | |||
| 0765b82a39 | |||
| 8dec405f4f | |||
| 4d73638a8b | |||
| ca49454615 | |||
| b20967559b | |||
| e1dc5a2e81 | |||
| a4333dfcb6 | |||
| a65e812b45 | |||
| 32e052a87b | |||
| e5866a3ff4 | |||
| 78bd7713a9 | |||
| 5d8403be5b | |||
| dd20da89d7 | |||
| 191a75fd22 | |||
| dbcaf28f39 | |||
| 13150ea553 | |||
| 14a9c99496 | |||
| 3fd8c7f928 | |||
| 9f9cc0e1ec | |||
| e115aa2c4e | |||
| ff49401f3a | |||
| a5a39ac3d6 | |||
| 7621252f46 | |||
| 0c120494b4 | |||
| 76b14af7ec | |||
| dda4f26102 | |||
| 3a3a94b610 | |||
| 6c470c1247 | |||
| 456934c737 | |||
| 212fc0838a | |||
| 2c3007eb2b | |||
| ef34ad7600 | |||
| 546501a553 | |||
| 37c8aacd8b | |||
| f6857f66ba | |||
| 527ba719f4 | |||
| 2c12fffdf6 | |||
| 84009baeb0 | |||
| c12ea8428e | |||
| 5c24f8c365 | |||
| 0e45f16b19 | |||
| f22a71509b | |||
| ae04253ba4 | |||
| 7656c6981e | |||
| d1add033b1 | |||
| 3c9d9cd8d6 | |||
| 607afeee50 | |||
| e970b6fd04 | |||
| f4a96e2715 | |||
| 7a969b5d7b | |||
| faf7f8ad03 | |||
| 2d8eaa0e8c | |||
| f528ba59ec | |||
| 6985bd6375 | |||
| cbf7caafb3 | |||
| b0f4f8d636 | |||
| 77f8df02e5 | |||
| 09b35266f7 | |||
| ff34c7cc9b | |||
| 0b8a176ff8 | |||
| 187e56c6ba | |||
| 77c6daf240 | |||
| b626d3047d | |||
| 2af285e972 | |||
| 09e50bb0e1 | |||
| 3d574f4169 | |||
| 2efc97b64f | |||
| 93dc57c08f | |||
| 67c963f60d | |||
| 95e60ea68e | |||
| 52904cbe3e | |||
| ebd88a407d | |||
| 0ed41f97fc | |||
| 133d13ff3c | |||
| 7112c8e791 | |||
| d44606d205 | |||
| 8564c86236 | |||
| 77acdecb1b | |||
| fb5d693b54 | |||
| 1cba68401d | |||
| aabe905f63 | |||
| 8ac67536de | |||
| f4c4738617 | |||
| 4c71f40bc2 | |||
| 4d08dc77b2 | |||
| 7924a62db6 | |||
| 5faa11e0a2 | |||
| 72b1178011 | |||
| 6d6961d961 | |||
| 091fe0a40a | |||
| 2d42ca522d | |||
| 79ccda3883 | |||
| 020351e56b | |||
| 40f7980c18 | |||
| aca5522245 | |||
| cc168db81b | |||
| 0a91b8b360 | |||
| 61747bef85 | |||
| 6af6649f70 | |||
| 3867cb5e97 | |||
| e18002dd03 | |||
| c19ff9b2ef | |||
| 656fcf9847 | |||
| 4a301bd09e | |||
| 789ec55dbe | |||
| 5303da4b90 | |||
| 8f19fde27a | |||
| f237d424fa | |||
| ea9695ac16 | |||
| e98d2c8a27 | |||
| 5b212bb8bc | |||
| 7cae9b4ce5 | |||
| 76a66cf400 | |||
| 21db53e232 | |||
| ca4e017e02 | |||
| 75221baa19 | |||
| e6996ff22f | |||
| 0e523204d5 | |||
| f1adedd689 | |||
| 031b640343 | |||
| 66b452e90c | |||
| c553859c3b | |||
| 3347887432 | |||
| 9a19717556 | |||
| de1437102e | |||
| a006fcec40 | |||
| 10d66fb871 | |||
| 439f74c540 | |||
| 8694bd6af9 | |||
| c62efdc44a | |||
| 74ce1028ae | |||
| 4fa9b4a741 | |||
| 2c4d578f7c | |||
| 07ace480ed | |||
| d4e7cf75ce | |||
| f154bfcfc1 | |||
| 8b0d1b4a8c | |||
| dd8f923bf5 | |||
| 19d9cd282d | |||
| 3132998c5e | |||
| 0b78d2711c | |||
| c3c3586628 | |||
| 05064402b1 | |||
| 7559cb4d99 | |||
| 9a77517cb4 | |||
| 94cacc8abc | |||
| 74fe176d2d | |||
| 2736363d93 | |||
| 7d09e67a5c | |||
| ab4f5d9a84 | |||
| 9ad4665270 | |||
| 569808af6d | |||
| c9726ab05b |
@@ -9,7 +9,7 @@ jobs:
|
|||||||
runs-on: "windows-2019"
|
runs-on: "windows-2019"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Setup Vulkan
|
- name: Setup Vulkan
|
||||||
uses: ./.github/actions/vulkan
|
uses: ./.github/actions/vulkan
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ jobs:
|
|||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo rm -f /etc/apt/sources.list.d/*
|
sudo rm -f /etc/apt/sources.list.d/*
|
||||||
@@ -32,7 +32,7 @@ jobs:
|
|||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo apt-get install libx11-dev libxcursor-dev libxinerama-dev
|
sudo apt-get install libx11-dev libxcursor-dev libxinerama-dev
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ jobs:
|
|||||||
runs-on: "macos-latest"
|
runs-on: "macos-latest"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Setup Vulkan
|
- name: Setup Vulkan
|
||||||
uses: ./.github/actions/vulkan
|
uses: ./.github/actions/vulkan
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
@@ -26,7 +26,7 @@ jobs:
|
|||||||
runs-on: "macos-latest"
|
runs-on: "macos-latest"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Setup Vulkan
|
- name: Setup Vulkan
|
||||||
uses: ./.github/actions/vulkan
|
uses: ./.github/actions/vulkan
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ jobs:
|
|||||||
runs-on: "windows-2019"
|
runs-on: "windows-2019"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Setup Vulkan
|
- name: Setup Vulkan
|
||||||
uses: ./.github/actions/vulkan
|
uses: ./.github/actions/vulkan
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
@@ -26,7 +26,7 @@ jobs:
|
|||||||
runs-on: "windows-2019"
|
runs-on: "windows-2019"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Setup Vulkan
|
- name: Setup Vulkan
|
||||||
uses: ./.github/actions/vulkan
|
uses: ./.github/actions/vulkan
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
|
|||||||
+13
-13
@@ -12,7 +12,7 @@ jobs:
|
|||||||
runs-on: "windows-2019"
|
runs-on: "windows-2019"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -23,12 +23,12 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
.\PackageEditor.bat -arch=x64 -platform=Windows -deployOutput=Output
|
.\PackageEditor.bat -arch=x64 -platform=Windows -deployOutput=Output
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Windows-Editor
|
name: Windows-Editor
|
||||||
path: Output/Editor.zip
|
path: Output/Editor.zip
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Windows-EditorDebugSymbols
|
name: Windows-EditorDebugSymbols
|
||||||
path: Output/EditorDebugSymbols.zip
|
path: Output/EditorDebugSymbols.zip
|
||||||
@@ -37,7 +37,7 @@ jobs:
|
|||||||
runs-on: "windows-2019"
|
runs-on: "windows-2019"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -48,7 +48,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
.\PackagePlatforms.bat -arch=x64 -platform=Windows -deployOutput=Output
|
.\PackagePlatforms.bat -arch=x64 -platform=Windows -deployOutput=Output
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Windows-Game
|
name: Windows-Game
|
||||||
path: Output/Windows.zip
|
path: Output/Windows.zip
|
||||||
@@ -59,7 +59,7 @@ jobs:
|
|||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -76,7 +76,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
./PackageEditor.sh -arch=x64 -platform=Linux -deployOutput=Output
|
./PackageEditor.sh -arch=x64 -platform=Linux -deployOutput=Output
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Linux-Editor
|
name: Linux-Editor
|
||||||
path: Output/FlaxEditorLinux.zip
|
path: Output/FlaxEditorLinux.zip
|
||||||
@@ -85,7 +85,7 @@ jobs:
|
|||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -102,7 +102,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
./PackagePlatforms.sh -arch=x64 -platform=Linux -deployOutput=Output
|
./PackagePlatforms.sh -arch=x64 -platform=Linux -deployOutput=Output
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Linux-Game
|
name: Linux-Game
|
||||||
path: Output/Linux.zip
|
path: Output/Linux.zip
|
||||||
@@ -113,7 +113,7 @@ jobs:
|
|||||||
runs-on: "macos-latest"
|
runs-on: "macos-latest"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -124,7 +124,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
./PackageEditor.command -arch=x64 -platform=Mac -deployOutput=Output
|
./PackageEditor.command -arch=x64 -platform=Mac -deployOutput=Output
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Mac-Editor
|
name: Mac-Editor
|
||||||
path: Output/FlaxEditorMac.zip
|
path: Output/FlaxEditorMac.zip
|
||||||
@@ -133,7 +133,7 @@ jobs:
|
|||||||
runs-on: "macos-latest"
|
runs-on: "macos-latest"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -144,7 +144,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
./PackagePlatforms.command -arch=x64 -platform=Mac -deployOutput=Output
|
./PackagePlatforms.command -arch=x64 -platform=Mac -deployOutput=Output
|
||||||
- name: Upload
|
- name: Upload
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: Mac-Game
|
name: Mac-Game
|
||||||
path: Output/Mac.zip
|
path: Output/Mac.zip
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ on: [push, pull_request]
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
# Tests
|
# Tests on Linux
|
||||||
tests-linux:
|
tests-linux:
|
||||||
name: Tests (Linux)
|
name: Tests (Linux)
|
||||||
runs-on: "ubuntu-20.04"
|
runs-on: "ubuntu-20.04"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repo
|
- name: Checkout repo
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
- name: Checkout LFS
|
- name: Checkout LFS
|
||||||
run: |
|
run: |
|
||||||
git lfs version
|
git lfs version
|
||||||
@@ -36,3 +36,27 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
./Development/Scripts/Linux/CallBuildTool.sh -build -log -arch=x64 -platform=Linux -configuration=Development -buildtargets=FlaxTestsTarget -UseLargeWorlds=true
|
./Development/Scripts/Linux/CallBuildTool.sh -build -log -arch=x64 -platform=Linux -configuration=Development -buildtargets=FlaxTestsTarget -UseLargeWorlds=true
|
||||||
Binaries/Editor/Linux/Development/FlaxTests
|
Binaries/Editor/Linux/Development/FlaxTests
|
||||||
|
|
||||||
|
# Tests on Windows
|
||||||
|
tests-windows:
|
||||||
|
name: Tests (Windows)
|
||||||
|
runs-on: "windows-2019"
|
||||||
|
steps:
|
||||||
|
- name: Checkout repo
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Checkout LFS
|
||||||
|
run: |
|
||||||
|
git lfs version
|
||||||
|
git lfs pull
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
.\GenerateProjectFiles.bat -vs2019
|
||||||
|
.\Development\Scripts\Windows\CallBuildTool.bat -build -log -arch=x64 -platform=Windows -configuration=Development -buildtargets=FlaxTestsTarget
|
||||||
|
.\Development\Scripts\Windows\CallBuildTool.bat -build -log -arch=x64 -platform=Windows -configuration=Debug -buildtargets=FlaxEditor -BuildBindingsOnly
|
||||||
|
.\Development\Scripts\Windows\CallBuildTool.bat -build -log -arch=x64 -platform=Windows -configuration=Debug -buildtargets="FlaxEngine.Tests"
|
||||||
|
.\Development\Scripts\Windows\CallBuildTool.bat -build -log -arch=x64 -platform=Windows -configuration=Debug -buildtargets="Flax.Build.Tests"
|
||||||
|
- name: Test
|
||||||
|
run: |
|
||||||
|
Binaries\Editor\Win64\Development\FlaxTests.exe
|
||||||
|
Source\Platforms\DotNet\NUnit\nunit3-console.exe Binaries\Tools\FlaxEngine.Tests.dll --framework=net-4.5.2
|
||||||
|
Source\Platforms\DotNet\NUnit\nunit3-console.exe Binaries\Tools\Flax.Build.Tests.dll --framework=net-4.5.2
|
||||||
|
|||||||
+1
-1
@@ -152,4 +152,4 @@ obj/
|
|||||||
.vscode/
|
.vscode/
|
||||||
.idea/
|
.idea/
|
||||||
*.code-workspace
|
*.code-workspace
|
||||||
|
omnisharp.json
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -2,6 +2,7 @@
|
|||||||
// Version: @0
|
// Version: @0
|
||||||
|
|
||||||
#define MATERIAL 1
|
#define MATERIAL 1
|
||||||
|
#define USE_PER_VIEW_CONSTANTS 1
|
||||||
@3
|
@3
|
||||||
|
|
||||||
#include "./Flax/Common.hlsl"
|
#include "./Flax/Common.hlsl"
|
||||||
@@ -10,17 +11,9 @@
|
|||||||
@7
|
@7
|
||||||
// Primary constant buffer (with additional material parameters)
|
// Primary constant buffer (with additional material parameters)
|
||||||
META_CB_BEGIN(0, Data)
|
META_CB_BEGIN(0, Data)
|
||||||
float4x4 ViewProjectionMatrix;
|
|
||||||
float4x4 WorldMatrix;
|
float4x4 WorldMatrix;
|
||||||
float4x4 ViewMatrix;
|
|
||||||
float4x4 InvWorld;
|
float4x4 InvWorld;
|
||||||
float4x4 SVPositionToWorld;
|
float4x4 SVPositionToWorld;
|
||||||
float3 ViewPos;
|
|
||||||
float ViewFar;
|
|
||||||
float3 ViewDir;
|
|
||||||
float TimeParam;
|
|
||||||
float4 ViewInfo;
|
|
||||||
float4 ScreenSize;
|
|
||||||
@1META_CB_END
|
@1META_CB_END
|
||||||
|
|
||||||
// Use depth buffer for per-pixel decal layering
|
// Use depth buffer for per-pixel decal layering
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
// Version: @0
|
// Version: @0
|
||||||
|
|
||||||
#define MATERIAL 1
|
#define MATERIAL 1
|
||||||
|
#define USE_PER_VIEW_CONSTANTS 1
|
||||||
@3
|
@3
|
||||||
#include "./Flax/Common.hlsl"
|
#include "./Flax/Common.hlsl"
|
||||||
#include "./Flax/MaterialCommon.hlsl"
|
#include "./Flax/MaterialCommon.hlsl"
|
||||||
@@ -9,23 +10,14 @@
|
|||||||
@7
|
@7
|
||||||
// Primary constant buffer (with additional material parameters)
|
// Primary constant buffer (with additional material parameters)
|
||||||
META_CB_BEGIN(0, Data)
|
META_CB_BEGIN(0, Data)
|
||||||
float4x4 ViewProjectionMatrix;
|
|
||||||
float4x4 WorldMatrix;
|
float4x4 WorldMatrix;
|
||||||
float4x4 LocalMatrix;
|
float4x4 LocalMatrix;
|
||||||
float4x4 ViewMatrix;
|
|
||||||
float3 ViewPos;
|
|
||||||
float ViewFar;
|
|
||||||
float3 ViewDir;
|
|
||||||
float TimeParam;
|
|
||||||
float4 ViewInfo;
|
|
||||||
float4 ScreenSize;
|
|
||||||
float3 Dummy0;
|
float3 Dummy0;
|
||||||
float WorldDeterminantSign;
|
float WorldDeterminantSign;
|
||||||
float MeshMinZ;
|
float MeshMinZ;
|
||||||
float Segment;
|
float Segment;
|
||||||
float ChunksPerSegment;
|
float ChunksPerSegment;
|
||||||
float PerInstanceRandom;
|
float PerInstanceRandom;
|
||||||
float4 TemporalAAJitter;
|
|
||||||
float3 GeometrySize;
|
float3 GeometrySize;
|
||||||
float MeshMaxZ;
|
float MeshMaxZ;
|
||||||
@1META_CB_END
|
@1META_CB_END
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ void PS_GBuffer(
|
|||||||
#if MATERIAL_MASKED
|
#if MATERIAL_MASKED
|
||||||
clip(material.Mask - MATERIAL_MASK_THRESHOLD);
|
clip(material.Mask - MATERIAL_MASK_THRESHOLD);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USE_LIGHTMAP
|
#if USE_LIGHTMAP
|
||||||
float3 diffuseColor = GetDiffuseColor(material.Color, material.Metalness);
|
float3 diffuseColor = GetDiffuseColor(material.Color, material.Metalness);
|
||||||
float3 specularColor = GetSpecularColor(material.Color, material.Specular, material.Metalness);
|
float3 specularColor = GetSpecularColor(material.Color, material.Specular, material.Metalness);
|
||||||
|
|||||||
@@ -33,9 +33,12 @@ DECLARE_LIGHTSHADOWDATA_ACCESS(DirectionalLightShadow);
|
|||||||
|
|
||||||
// Pixel Shader function for Forward Pass
|
// Pixel Shader function for Forward Pass
|
||||||
META_PS(USE_FORWARD, FEATURE_LEVEL_ES2)
|
META_PS(USE_FORWARD, FEATURE_LEVEL_ES2)
|
||||||
float4 PS_Forward(PixelInput input) : SV_Target0
|
void PS_Forward(
|
||||||
|
in PixelInput input
|
||||||
|
,out float4 output : SV_Target0
|
||||||
|
)
|
||||||
{
|
{
|
||||||
float4 output = 0;
|
output = 0;
|
||||||
|
|
||||||
#if USE_DITHERED_LOD_TRANSITION
|
#if USE_DITHERED_LOD_TRANSITION
|
||||||
// LOD masking
|
// LOD masking
|
||||||
@@ -148,6 +151,4 @@ float4 PS_Forward(PixelInput input) : SV_Target0
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return output;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,8 @@
|
|||||||
// Version: @0
|
// Version: @0
|
||||||
|
|
||||||
#define MATERIAL 1
|
#define MATERIAL 1
|
||||||
|
#define USE_PER_VIEW_CONSTANTS 1
|
||||||
@3
|
@3
|
||||||
// Ribbons don't use sorted indices so overlap the segment distances buffer on the slot
|
|
||||||
#define HAS_SORTED_INDICES (!defined(_VS_Ribbon))
|
|
||||||
|
|
||||||
#include "./Flax/Common.hlsl"
|
#include "./Flax/Common.hlsl"
|
||||||
#include "./Flax/MaterialCommon.hlsl"
|
#include "./Flax/MaterialCommon.hlsl"
|
||||||
@@ -17,17 +16,17 @@ struct SpriteInput
|
|||||||
float2 TexCoord : TEXCOORD;
|
float2 TexCoord : TEXCOORD;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct RibbonInput
|
||||||
|
{
|
||||||
|
uint Order : TEXCOORD0;
|
||||||
|
uint ParticleIndex : TEXCOORD1;
|
||||||
|
uint PrevParticleIndex : TEXCOORD2;
|
||||||
|
float Distance : TEXCOORD3;
|
||||||
|
};
|
||||||
|
|
||||||
// Primary constant buffer (with additional material parameters)
|
// Primary constant buffer (with additional material parameters)
|
||||||
META_CB_BEGIN(0, Data)
|
META_CB_BEGIN(0, Data)
|
||||||
float4x4 ViewProjectionMatrix;
|
|
||||||
float4x4 WorldMatrix;
|
float4x4 WorldMatrix;
|
||||||
float4x4 ViewMatrix;
|
|
||||||
float3 ViewPos;
|
|
||||||
float ViewFar;
|
|
||||||
float3 ViewDir;
|
|
||||||
float TimeParam;
|
|
||||||
float4 ViewInfo;
|
|
||||||
float4 ScreenSize;
|
|
||||||
uint SortedIndicesOffset;
|
uint SortedIndicesOffset;
|
||||||
float PerInstanceRandom;
|
float PerInstanceRandom;
|
||||||
int ParticleStride;
|
int ParticleStride;
|
||||||
@@ -52,13 +51,8 @@ float4x4 WorldMatrixInverseTransposed;
|
|||||||
// Particles attributes buffer
|
// Particles attributes buffer
|
||||||
ByteAddressBuffer ParticlesData : register(t0);
|
ByteAddressBuffer ParticlesData : register(t0);
|
||||||
|
|
||||||
#if HAS_SORTED_INDICES
|
|
||||||
// Sorted particles indices
|
// Sorted particles indices
|
||||||
Buffer<uint> SortedIndices : register(t1);
|
Buffer<uint> SortedIndices : register(t1);
|
||||||
#else
|
|
||||||
// Ribbon particles segments distances buffer
|
|
||||||
Buffer<float> SegmentDistances : register(t1);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Shader resources
|
// Shader resources
|
||||||
@2
|
@2
|
||||||
@@ -327,13 +321,11 @@ VertexOutput VS_Sprite(SpriteInput input, uint particleIndex : SV_InstanceID)
|
|||||||
{
|
{
|
||||||
VertexOutput output;
|
VertexOutput output;
|
||||||
|
|
||||||
#if HAS_SORTED_INDICES
|
|
||||||
// Sorted particles mapping
|
// Sorted particles mapping
|
||||||
if (SortedIndicesOffset != 0xFFFFFFFF)
|
if (SortedIndicesOffset != 0xFFFFFFFF)
|
||||||
{
|
{
|
||||||
particleIndex = SortedIndices[SortedIndicesOffset + particleIndex];
|
particleIndex = SortedIndices[SortedIndicesOffset + particleIndex];
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
// Read particle data
|
// Read particle data
|
||||||
float3 particlePosition = GetParticleVec3(particleIndex, PositionOffset);
|
float3 particlePosition = GetParticleVec3(particleIndex, PositionOffset);
|
||||||
@@ -464,13 +456,11 @@ VertexOutput VS_Model(ModelInput input, uint particleIndex : SV_InstanceID)
|
|||||||
{
|
{
|
||||||
VertexOutput output;
|
VertexOutput output;
|
||||||
|
|
||||||
#if HAS_SORTED_INDICES
|
|
||||||
// Sorted particles mapping
|
// Sorted particles mapping
|
||||||
if (SortedIndicesOffset != 0xFFFFFFFF)
|
if (SortedIndicesOffset != 0xFFFFFFFF)
|
||||||
{
|
{
|
||||||
particleIndex = SortedIndices[SortedIndicesOffset + particleIndex];
|
particleIndex = SortedIndices[SortedIndicesOffset + particleIndex];
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
// Read particle data
|
// Read particle data
|
||||||
float3 particlePosition = GetParticleVec3(particleIndex, PositionOffset);
|
float3 particlePosition = GetParticleVec3(particleIndex, PositionOffset);
|
||||||
@@ -573,12 +563,16 @@ VertexOutput VS_Model(ModelInput input, uint particleIndex : SV_InstanceID)
|
|||||||
|
|
||||||
// Vertex Shader function for Ribbon Rendering
|
// Vertex Shader function for Ribbon Rendering
|
||||||
META_VS(true, FEATURE_LEVEL_ES2)
|
META_VS(true, FEATURE_LEVEL_ES2)
|
||||||
VertexOutput VS_Ribbon(uint vertexIndex : SV_VertexID)
|
META_VS_IN_ELEMENT(TEXCOORD, 0, R32_UINT, 0, 0, PER_VERTEX, 0, true)
|
||||||
|
META_VS_IN_ELEMENT(TEXCOORD, 1, R32_UINT, 0, ALIGN, PER_VERTEX, 0, true)
|
||||||
|
META_VS_IN_ELEMENT(TEXCOORD, 2, R32_UINT, 0, ALIGN, PER_VERTEX, 0, true)
|
||||||
|
META_VS_IN_ELEMENT(TEXCOORD, 3, R32_FLOAT, 0, ALIGN, PER_VERTEX, 0, true)
|
||||||
|
VertexOutput VS_Ribbon(RibbonInput input, uint vertexIndex : SV_VertexID)
|
||||||
{
|
{
|
||||||
VertexOutput output;
|
VertexOutput output;
|
||||||
|
|
||||||
// Get particle data
|
// Get particle data
|
||||||
uint particleIndex = vertexIndex / 2;
|
uint particleIndex = input.ParticleIndex;
|
||||||
int vertexSign = (((int)vertexIndex & 0x1) * 2) - 1;
|
int vertexSign = (((int)vertexIndex & 0x1) * 2) - 1;
|
||||||
float3 position = GetParticlePosition(particleIndex);
|
float3 position = GetParticlePosition(particleIndex);
|
||||||
float ribbonWidth = RibbonWidthOffset != -1 ? GetParticleFloat(particleIndex, RibbonWidthOffset) : 20.0f;
|
float ribbonWidth = RibbonWidthOffset != -1 ? GetParticleFloat(particleIndex, RibbonWidthOffset) : 20.0f;
|
||||||
@@ -586,15 +580,13 @@ VertexOutput VS_Ribbon(uint vertexIndex : SV_VertexID)
|
|||||||
|
|
||||||
// Calculate ribbon direction
|
// Calculate ribbon direction
|
||||||
float3 direction;
|
float3 direction;
|
||||||
if (particleIndex == 0)
|
if (input.Order == 0)
|
||||||
{
|
{
|
||||||
float3 nextParticlePos = GetParticlePosition(particleIndex + 1);
|
direction = GetParticlePosition(input.PrevParticleIndex) - position;
|
||||||
direction = nextParticlePos - position;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
float3 previousParticlePos = GetParticlePosition(particleIndex - 1);
|
direction = position - GetParticlePosition(input.PrevParticleIndex);
|
||||||
direction = position - previousParticlePos;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate particle orientation (tangent vectors)
|
// Calculate particle orientation (tangent vectors)
|
||||||
@@ -611,19 +603,16 @@ VertexOutput VS_Ribbon(uint vertexIndex : SV_VertexID)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Calculate texture coordinates
|
// Calculate texture coordinates
|
||||||
float texCoordU;
|
|
||||||
#ifdef _VS_Ribbon
|
|
||||||
if (RibbonUVTilingDistance != 0.0f)
|
if (RibbonUVTilingDistance != 0.0f)
|
||||||
{
|
{
|
||||||
texCoordU = SegmentDistances[particleIndex] / RibbonUVTilingDistance;
|
output.TexCoord.x = input.Distance / RibbonUVTilingDistance;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
{
|
{
|
||||||
texCoordU = (float)particleIndex / RibbonSegmentCount;
|
output.TexCoord.x = (float)input.Order / (float)RibbonSegmentCount;
|
||||||
}
|
}
|
||||||
float texCoordV = (vertexIndex + 1) & 0x1;
|
output.TexCoord.y = (vertexIndex + 1) & 0x1;
|
||||||
output.TexCoord = float2(texCoordU, texCoordV) * RibbonUVScale + RibbonUVOffset;
|
output.TexCoord = output.TexCoord * RibbonUVScale + RibbonUVOffset;
|
||||||
|
|
||||||
// Compute world space vertex position
|
// Compute world space vertex position
|
||||||
output.WorldPosition = position + tangentRight * vertexSign * (ribbonWidth.xxx * 0.5f);
|
output.WorldPosition = position + tangentRight * vertexSign * (ribbonWidth.xxx * 0.5f);
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ float TimeParam;
|
|||||||
float4 ViewInfo;
|
float4 ViewInfo;
|
||||||
float4 ScreenSize;
|
float4 ScreenSize;
|
||||||
float4 TemporalAAJitter;
|
float4 TemporalAAJitter;
|
||||||
|
float4x4 InverseViewProjectionMatrix;
|
||||||
@1META_CB_END
|
@1META_CB_END
|
||||||
|
|
||||||
// Shader resources
|
// Shader resources
|
||||||
@@ -62,6 +63,14 @@ MaterialInput GetMaterialInput(PixelInput input)
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Gets world space position at given pixel coordinate with given device depth
|
||||||
|
float3 GetWorldPos(float2 uv, float deviceDepth)
|
||||||
|
{
|
||||||
|
float4 clipPos = float4(uv * float2(2.0, -2.0) + float2(-1.0, 1.0), deviceDepth, 1.0);
|
||||||
|
float4 wsPos = mul(clipPos, InverseViewProjectionMatrix);
|
||||||
|
return wsPos.xyz / wsPos.w;
|
||||||
|
}
|
||||||
|
|
||||||
// Transforms a vector from tangent space to world space
|
// Transforms a vector from tangent space to world space
|
||||||
float3 TransformTangentVectorToWorld(MaterialInput input, float3 tangentVector)
|
float3 TransformTangentVectorToWorld(MaterialInput input, float3 tangentVector)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
// Version: @0
|
// Version: @0
|
||||||
|
|
||||||
#define MATERIAL 1
|
#define MATERIAL 1
|
||||||
|
#define USE_PER_VIEW_CONSTANTS 1
|
||||||
@3
|
@3
|
||||||
#include "./Flax/Common.hlsl"
|
#include "./Flax/Common.hlsl"
|
||||||
#include "./Flax/MaterialCommon.hlsl"
|
#include "./Flax/MaterialCommon.hlsl"
|
||||||
@@ -9,27 +10,13 @@
|
|||||||
@7
|
@7
|
||||||
// Primary constant buffer (with additional material parameters)
|
// Primary constant buffer (with additional material parameters)
|
||||||
META_CB_BEGIN(0, Data)
|
META_CB_BEGIN(0, Data)
|
||||||
float4x4 ViewProjectionMatrix;
|
|
||||||
float4x4 WorldMatrix;
|
float4x4 WorldMatrix;
|
||||||
float4x4 ViewMatrix;
|
|
||||||
float4x4 PrevViewProjectionMatrix;
|
|
||||||
float4x4 PrevWorldMatrix;
|
float4x4 PrevWorldMatrix;
|
||||||
float4x4 MainViewProjectionMatrix;
|
|
||||||
float4 MainScreenSize;
|
|
||||||
float3 ViewPos;
|
|
||||||
float ViewFar;
|
|
||||||
float3 ViewDir;
|
|
||||||
float TimeParam;
|
|
||||||
float4 ViewInfo;
|
|
||||||
float4 ScreenSize;
|
|
||||||
float3 WorldInvScale;
|
|
||||||
float WorldDeterminantSign;
|
|
||||||
float2 Dummy0;
|
float2 Dummy0;
|
||||||
float LODDitherFactor;
|
float LODDitherFactor;
|
||||||
float PerInstanceRandom;
|
float PerInstanceRandom;
|
||||||
float4 TemporalAAJitter;
|
|
||||||
float3 GeometrySize;
|
float3 GeometrySize;
|
||||||
float Dummy1;
|
float WorldDeterminantSign;
|
||||||
@1META_CB_END
|
@1META_CB_END
|
||||||
|
|
||||||
// Shader resources
|
// Shader resources
|
||||||
@@ -48,6 +35,9 @@ struct GeometryData
|
|||||||
nointerpolation float3 InstanceOrigin : TEXCOORD5;
|
nointerpolation float3 InstanceOrigin : TEXCOORD5;
|
||||||
nointerpolation float2 InstanceParams : TEXCOORD6; // x-PerInstanceRandom, y-LODDitherFactor
|
nointerpolation float2 InstanceParams : TEXCOORD6; // x-PerInstanceRandom, y-LODDitherFactor
|
||||||
float3 PrevWorldPosition : TEXCOORD7;
|
float3 PrevWorldPosition : TEXCOORD7;
|
||||||
|
nointerpolation float3 InstanceTransform1 : TEXCOORD8;
|
||||||
|
nointerpolation float3 InstanceTransform2 : TEXCOORD9;
|
||||||
|
nointerpolation float3 InstanceTransform3 : TEXCOORD10;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Interpolants passed from the vertex shader
|
// Interpolants passed from the vertex shader
|
||||||
@@ -56,7 +46,7 @@ struct VertexOutput
|
|||||||
float4 Position : SV_Position;
|
float4 Position : SV_Position;
|
||||||
GeometryData Geometry;
|
GeometryData Geometry;
|
||||||
#if USE_CUSTOM_VERTEX_INTERPOLATORS
|
#if USE_CUSTOM_VERTEX_INTERPOLATORS
|
||||||
float4 CustomVSToPS[CUSTOM_VERTEX_INTERPOLATORS_COUNT] : TEXCOORD9;
|
float4 CustomVSToPS[CUSTOM_VERTEX_INTERPOLATORS_COUNT] : TEXCOORD11;
|
||||||
#endif
|
#endif
|
||||||
#if USE_TESSELLATION
|
#if USE_TESSELLATION
|
||||||
float TessellationMultiplier : TESS;
|
float TessellationMultiplier : TESS;
|
||||||
@@ -69,7 +59,7 @@ struct PixelInput
|
|||||||
float4 Position : SV_Position;
|
float4 Position : SV_Position;
|
||||||
GeometryData Geometry;
|
GeometryData Geometry;
|
||||||
#if USE_CUSTOM_VERTEX_INTERPOLATORS
|
#if USE_CUSTOM_VERTEX_INTERPOLATORS
|
||||||
float4 CustomVSToPS[CUSTOM_VERTEX_INTERPOLATORS_COUNT] : TEXCOORD9;
|
float4 CustomVSToPS[CUSTOM_VERTEX_INTERPOLATORS_COUNT] : TEXCOORD11;
|
||||||
#endif
|
#endif
|
||||||
bool IsFrontFace : SV_IsFrontFace;
|
bool IsFrontFace : SV_IsFrontFace;
|
||||||
};
|
};
|
||||||
@@ -92,11 +82,9 @@ struct MaterialInput
|
|||||||
float3 PreSkinnedNormal;
|
float3 PreSkinnedNormal;
|
||||||
float3 InstanceOrigin;
|
float3 InstanceOrigin;
|
||||||
float2 InstanceParams;
|
float2 InstanceParams;
|
||||||
#if USE_INSTANCING
|
|
||||||
float3 InstanceTransform1;
|
float3 InstanceTransform1;
|
||||||
float3 InstanceTransform2;
|
float3 InstanceTransform2;
|
||||||
float3 InstanceTransform3;
|
float3 InstanceTransform3;
|
||||||
#endif
|
|
||||||
#if USE_CUSTOM_VERTEX_INTERPOLATORS
|
#if USE_CUSTOM_VERTEX_INTERPOLATORS
|
||||||
float4 CustomVSToPS[CUSTOM_VERTEX_INTERPOLATORS_COUNT];
|
float4 CustomVSToPS[CUSTOM_VERTEX_INTERPOLATORS_COUNT];
|
||||||
#endif
|
#endif
|
||||||
@@ -117,6 +105,9 @@ MaterialInput GetGeometryMaterialInput(GeometryData geometry)
|
|||||||
output.TBN = CalcTangentBasis(geometry.WorldNormal, geometry.WorldTangent);
|
output.TBN = CalcTangentBasis(geometry.WorldNormal, geometry.WorldTangent);
|
||||||
output.InstanceOrigin = geometry.InstanceOrigin;
|
output.InstanceOrigin = geometry.InstanceOrigin;
|
||||||
output.InstanceParams = geometry.InstanceParams;
|
output.InstanceParams = geometry.InstanceParams;
|
||||||
|
output.InstanceTransform1 = geometry.InstanceTransform1;
|
||||||
|
output.InstanceTransform2 = geometry.InstanceTransform2;
|
||||||
|
output.InstanceTransform3 = geometry.InstanceTransform3;
|
||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,6 +145,9 @@ GeometryData InterpolateGeometry(GeometryData p0, float w0, GeometryData p1, flo
|
|||||||
output.WorldTangent.xyz = normalize(output.WorldTangent.xyz);
|
output.WorldTangent.xyz = normalize(output.WorldTangent.xyz);
|
||||||
output.InstanceOrigin = p0.InstanceOrigin;
|
output.InstanceOrigin = p0.InstanceOrigin;
|
||||||
output.InstanceParams = p0.InstanceParams;
|
output.InstanceParams = p0.InstanceParams;
|
||||||
|
output.InstanceTransform1 = p0.InstanceTransform1;
|
||||||
|
output.InstanceTransform2 = p0.InstanceTransform2;
|
||||||
|
output.InstanceTransform3 = p0.InstanceTransform3;
|
||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,17 +164,19 @@ MaterialInput GetMaterialInput(PixelInput input)
|
|||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Gets the local to world transform matrix (supports instancing)
|
// Gets the local to world transform matrix
|
||||||
#if USE_INSTANCING
|
|
||||||
#define GetInstanceTransform(input) float4x4(float4(input.InstanceTransform1.xyz, 0.0f), float4(input.InstanceTransform2.xyz, 0.0f), float4(input.InstanceTransform3.xyz, 0.0f), float4(input.InstanceOrigin.xyz, 1.0f))
|
#define GetInstanceTransform(input) float4x4(float4(input.InstanceTransform1.xyz, 0.0f), float4(input.InstanceTransform2.xyz, 0.0f), float4(input.InstanceTransform3.xyz, 0.0f), float4(input.InstanceOrigin.xyz, 1.0f))
|
||||||
|
|
||||||
|
// Extarcts the world matrix and instancce transform vector
|
||||||
|
#if USE_INSTANCING
|
||||||
|
#define CalculateInstanceTransform(input) float4x4 world = GetInstanceTransform(input); output.Geometry.InstanceTransform1 = input.InstanceTransform1.xyz; output.Geometry.InstanceTransform2 = input.InstanceTransform2.xyz; output.Geometry.InstanceTransform3 = input.InstanceTransform3.xyz;
|
||||||
#else
|
#else
|
||||||
#define GetInstanceTransform(input) WorldMatrix;
|
#define CalculateInstanceTransform(input) float4x4 world = WorldMatrix; output.Geometry.InstanceTransform1 = world[0].xyz; output.Geometry.InstanceTransform2 = world[1].xyz; output.Geometry.InstanceTransform3 = world[2].xyz;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Removes the scale vector from the local to world transformation matrix (supports instancing)
|
// Removes the scale vector from the local to world transformation matrix (supports instancing)
|
||||||
float3x3 RemoveScaleFromLocalToWorld(float3x3 localToWorld)
|
float3x3 RemoveScaleFromLocalToWorld(float3x3 localToWorld)
|
||||||
{
|
{
|
||||||
#if USE_INSTANCING
|
|
||||||
// Extract per axis scales from localToWorld transform
|
// Extract per axis scales from localToWorld transform
|
||||||
float scaleX = length(localToWorld[0]);
|
float scaleX = length(localToWorld[0]);
|
||||||
float scaleY = length(localToWorld[1]);
|
float scaleY = length(localToWorld[1]);
|
||||||
@@ -189,9 +185,6 @@ float3x3 RemoveScaleFromLocalToWorld(float3x3 localToWorld)
|
|||||||
scaleX > 0.00001f ? 1.0f / scaleX : 0.0f,
|
scaleX > 0.00001f ? 1.0f / scaleX : 0.0f,
|
||||||
scaleY > 0.00001f ? 1.0f / scaleY : 0.0f,
|
scaleY > 0.00001f ? 1.0f / scaleY : 0.0f,
|
||||||
scaleZ > 0.00001f ? 1.0f / scaleZ : 0.0f);
|
scaleZ > 0.00001f ? 1.0f / scaleZ : 0.0f);
|
||||||
#else
|
|
||||||
float3 invScale = WorldInvScale;
|
|
||||||
#endif
|
|
||||||
localToWorld[0] *= invScale.x;
|
localToWorld[0] *= invScale.x;
|
||||||
localToWorld[1] *= invScale.y;
|
localToWorld[1] *= invScale.y;
|
||||||
localToWorld[2] *= invScale.z;
|
localToWorld[2] *= invScale.z;
|
||||||
@@ -333,7 +326,7 @@ VertexOutput VS(ModelInput input)
|
|||||||
VertexOutput output;
|
VertexOutput output;
|
||||||
|
|
||||||
// Compute world space vertex position
|
// Compute world space vertex position
|
||||||
float4x4 world = GetInstanceTransform(input);
|
CalculateInstanceTransform(input);
|
||||||
output.Geometry.WorldPosition = mul(float4(input.Position.xyz, 1), world).xyz;
|
output.Geometry.WorldPosition = mul(float4(input.Position.xyz, 1), world).xyz;
|
||||||
output.Geometry.PrevWorldPosition = mul(float4(input.Position.xyz, 1), PrevWorldMatrix).xyz;
|
output.Geometry.PrevWorldPosition = mul(float4(input.Position.xyz, 1), PrevWorldMatrix).xyz;
|
||||||
|
|
||||||
@@ -372,11 +365,6 @@ VertexOutput VS(ModelInput input)
|
|||||||
materialInput.SvPosition = output.Position;
|
materialInput.SvPosition = output.Position;
|
||||||
materialInput.PreSkinnedPosition = input.Position.xyz;
|
materialInput.PreSkinnedPosition = input.Position.xyz;
|
||||||
materialInput.PreSkinnedNormal = tangentToLocal[2].xyz;
|
materialInput.PreSkinnedNormal = tangentToLocal[2].xyz;
|
||||||
#if USE_INSTANCING
|
|
||||||
materialInput.InstanceTransform1 = input.InstanceTransform1.xyz;
|
|
||||||
materialInput.InstanceTransform2 = input.InstanceTransform2.xyz;
|
|
||||||
materialInput.InstanceTransform3 = input.InstanceTransform3.xyz;
|
|
||||||
#endif
|
|
||||||
Material material = GetMaterialVS(materialInput);
|
Material material = GetMaterialVS(materialInput);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -411,7 +399,11 @@ META_VS_IN_ELEMENT(ATTRIBUTE,3, R32G32B32_FLOAT, 3, ALIGN, PER_INSTANCE, 1, US
|
|||||||
META_VS_IN_ELEMENT(ATTRIBUTE,4, R16G16B16A16_FLOAT,3, ALIGN, PER_INSTANCE, 1, USE_INSTANCING)
|
META_VS_IN_ELEMENT(ATTRIBUTE,4, R16G16B16A16_FLOAT,3, ALIGN, PER_INSTANCE, 1, USE_INSTANCING)
|
||||||
float4 VS_Depth(ModelInput_PosOnly input) : SV_Position
|
float4 VS_Depth(ModelInput_PosOnly input) : SV_Position
|
||||||
{
|
{
|
||||||
|
#if USE_INSTANCING
|
||||||
float4x4 world = GetInstanceTransform(input);
|
float4x4 world = GetInstanceTransform(input);
|
||||||
|
#else
|
||||||
|
float4x4 world = WorldMatrix;
|
||||||
|
#endif
|
||||||
float3 worldPosition = mul(float4(input.Position.xyz, 1), world).xyz;
|
float3 worldPosition = mul(float4(input.Position.xyz, 1), world).xyz;
|
||||||
float4 position = mul(float4(worldPosition, 1), ViewProjectionMatrix);
|
float4 position = mul(float4(worldPosition, 1), ViewProjectionMatrix);
|
||||||
return position;
|
return position;
|
||||||
@@ -515,7 +507,7 @@ VertexOutput VS_Skinned(ModelInput_Skinned input)
|
|||||||
float3x3 tangentToLocal = SkinTangents(input, data);
|
float3x3 tangentToLocal = SkinTangents(input, data);
|
||||||
|
|
||||||
// Compute world space vertex position
|
// Compute world space vertex position
|
||||||
float4x4 world = GetInstanceTransform(input);
|
CalculateInstanceTransform(input);
|
||||||
output.Geometry.WorldPosition = mul(float4(position, 1), world).xyz;
|
output.Geometry.WorldPosition = mul(float4(position, 1), world).xyz;
|
||||||
#if PER_BONE_MOTION_BLUR
|
#if PER_BONE_MOTION_BLUR
|
||||||
float3 prevPosition = SkinPrevPosition(input);
|
float3 prevPosition = SkinPrevPosition(input);
|
||||||
@@ -602,7 +594,7 @@ void PS_Depth(PixelInput input)
|
|||||||
ClipLODTransition(input);
|
ClipLODTransition(input);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if MATERIAL_MASKED || MATERIAL_BLEND != MATERIAL_BLEND_OPAQUE
|
#if MATERIAL_MASKED || MATERIAL_BLEND != MATERIAL_BLEND_OPAQUE
|
||||||
// Get material parameters
|
// Get material parameters
|
||||||
MaterialInput materialInput = GetMaterialInput(input);
|
MaterialInput materialInput = GetMaterialInput(input);
|
||||||
Material material = GetMaterialPS(materialInput);
|
Material material = GetMaterialPS(materialInput);
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
// Version: @0
|
// Version: @0
|
||||||
|
|
||||||
#define MATERIAL 1
|
#define MATERIAL 1
|
||||||
|
#define USE_PER_VIEW_CONSTANTS 1
|
||||||
@3
|
@3
|
||||||
// Enables/disables smooth terrain chunks LOD transitions (with morphing higher LOD near edges to the lower LOD in the neighbour)
|
// Enables/disables smooth terrain chunks LOD transitions (with morphing higher LOD near edges to the lower LOD in the neighbour)
|
||||||
#define USE_SMOOTH_LOD_TRANSITION 1
|
#define USE_SMOOTH_LOD_TRANSITION 1
|
||||||
@@ -16,15 +17,7 @@
|
|||||||
@7
|
@7
|
||||||
// Primary constant buffer (with additional material parameters)
|
// Primary constant buffer (with additional material parameters)
|
||||||
META_CB_BEGIN(0, Data)
|
META_CB_BEGIN(0, Data)
|
||||||
float4x4 ViewProjectionMatrix;
|
|
||||||
float4x4 WorldMatrix;
|
float4x4 WorldMatrix;
|
||||||
float4x4 ViewMatrix;
|
|
||||||
float3 ViewPos;
|
|
||||||
float ViewFar;
|
|
||||||
float3 ViewDir;
|
|
||||||
float TimeParam;
|
|
||||||
float4 ViewInfo;
|
|
||||||
float4 ScreenSize;
|
|
||||||
float3 WorldInvScale;
|
float3 WorldInvScale;
|
||||||
float WorldDeterminantSign;
|
float WorldDeterminantSign;
|
||||||
float PerInstanceRandom;
|
float PerInstanceRandom;
|
||||||
@@ -276,24 +269,16 @@ float CalcLOD(float2 xy, float4 morph)
|
|||||||
if ((xy.x + xy.y) > 1)
|
if ((xy.x + xy.y) > 1)
|
||||||
{
|
{
|
||||||
if (xy.x < xy.y)
|
if (xy.x < xy.y)
|
||||||
{
|
|
||||||
lod = lodCalculated.w;
|
lod = lodCalculated.w;
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
lod = lodCalculated.z;
|
lod = lodCalculated.z;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (xy.x < xy.y)
|
if (xy.x < xy.y)
|
||||||
{
|
|
||||||
lod = lodCalculated.y;
|
lod = lodCalculated.y;
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
lod = lodCalculated.x;
|
lod = lodCalculated.x;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return lod;
|
return lod;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
// Version: @0
|
// Version: @0
|
||||||
|
|
||||||
#define MATERIAL 1
|
#define MATERIAL 1
|
||||||
|
#define USE_PER_VIEW_CONSTANTS 1
|
||||||
@3
|
@3
|
||||||
|
|
||||||
#include "./Flax/Common.hlsl"
|
#include "./Flax/Common.hlsl"
|
||||||
@@ -11,17 +12,9 @@
|
|||||||
|
|
||||||
// Primary constant buffer (with additional material parameters)
|
// Primary constant buffer (with additional material parameters)
|
||||||
META_CB_BEGIN(0, Data)
|
META_CB_BEGIN(0, Data)
|
||||||
float4x4 ViewProjectionMatrix;
|
|
||||||
float4x4 InverseViewProjectionMatrix;
|
float4x4 InverseViewProjectionMatrix;
|
||||||
float4x4 ViewMatrix;
|
|
||||||
float4x4 WorldMatrix;
|
float4x4 WorldMatrix;
|
||||||
float4x4 WorldMatrixInverseTransposed;
|
float4x4 WorldMatrixInverseTransposed;
|
||||||
float3 ViewPos;
|
|
||||||
float ViewFar;
|
|
||||||
float3 ViewDir;
|
|
||||||
float TimeParam;
|
|
||||||
float4 ViewInfo;
|
|
||||||
float4 ScreenSize;
|
|
||||||
float3 GridSize;
|
float3 GridSize;
|
||||||
float PerInstanceRandom;
|
float PerInstanceRandom;
|
||||||
float Dummy0;
|
float Dummy0;
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,4 @@
|
|||||||
%copyright%
|
%copyright%#pragma once
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "Engine/Core/ISerializable.h"
|
#include "Engine/Core/ISerializable.h"
|
||||||
#include "Engine/Core/Types/BaseTypes.h"
|
#include "Engine/Core/Types/BaseTypes.h"
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
%copyright%
|
%copyright%#include "%filename%.h"
|
||||||
#include "%filename%.h"
|
|
||||||
#include "Engine/Core/Log.h"
|
#include "Engine/Core/Log.h"
|
||||||
|
|
||||||
void %class%::RunNativeAction(Vector4 data)
|
void %class%::RunNativeAction(Vector4 data)
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
%copyright%
|
%copyright%#pragma once
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "Engine/Scripting/Script.h"
|
#include "Engine/Scripting/Script.h"
|
||||||
#include "Engine/Core/Math/Vector4.h"
|
#include "Engine/Core/Math/Vector4.h"
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
%copyright%
|
%copyright%#include "%filename%.h"
|
||||||
#include "%filename%.h"
|
|
||||||
|
|
||||||
%class%::%class%(const SpawnParams& params)
|
%class%::%class%(const SpawnParams& params)
|
||||||
: Script(params)
|
: Script(params)
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
%copyright%
|
%copyright%#pragma once
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "Engine/Scripting/Script.h"
|
#include "Engine/Scripting/Script.h"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user