addwater.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. window.prepareWater = function() {
  2. var water = new BABYLON.WaterMaterial("water", scene);
  3. water.backFaceCulling = false;
  4. water.enableRenderTargets(false);
  5. water.bumpTexture = new BABYLON.Texture("textures/waterbump.png", scene);
  6. water.windForce = 45;
  7. water.waveHeight = 1.3;
  8. water.windDirection = new BABYLON.Vector2(1, 1);
  9. registerRangeUI("water", "windForce", 0, 100, function(value) {
  10. water.windForce = value;
  11. }, function() {
  12. return water.windForce;
  13. });
  14. registerRangeUI("water", "waveHeight", 0, 20, function(value) {
  15. water.waveHeight = value;
  16. }, function() {
  17. return water.waveHeight;
  18. });
  19. registerRangeUI("water", "bumpHeight", 0, 10, function(value) {
  20. water.bumpHeight = value;
  21. }, function() {
  22. return water.bumpHeight;
  23. });
  24. registerRangeUI("water", "colorBlendFactor", 0, 1, function(value) {
  25. water.colorBlendFactor = value;
  26. }, function() {
  27. return water.colorBlendFactor;
  28. });
  29. registerRangeUI("water", "waveLength", 0, 1, function(value) {
  30. water.waveLength = value;
  31. }, function() {
  32. return water.waveLength;
  33. });
  34. registerRangeUI("water", "waveSpeed", 0, 100, function(value) {
  35. water.waveSpeed = value;
  36. }, function() {
  37. return water.waveSpeed;
  38. });
  39. // Specular color
  40. registerRangeUI("water", "specularColorR", 0, 1, function(value) {
  41. water.specularColor.r = value;
  42. }, function() {
  43. return water.specularColor.r;
  44. });
  45. registerRangeUI("water", "specularColorG", 0, 1, function(value) {
  46. water.specularColor.g = value;
  47. }, function() {
  48. return water.specularColor.g;
  49. });
  50. registerRangeUI("water", "specularColorB", 0, 1, function(value) {
  51. water.specularColor.b = value;
  52. }, function() {
  53. return water.specularColor.b;
  54. });
  55. registerRangeUI("water", "specularPower", 0, 512, function(value) {
  56. water.specularPower = value;
  57. }, function() {
  58. return water.specularPower;
  59. });
  60. return water;
  61. }