소스 검색

particles: combine two soft_start() overloads created by #769

rdb 6 년 전
부모
커밋
d08219584d
2개의 변경된 파일9개의 추가작업 그리고 17개의 파일을 삭제
  1. 8 15
      panda/src/particlesystem/particleSystem.I
  2. 1 2
      panda/src/particlesystem/particleSystem.h

+ 8 - 15
panda/src/particlesystem/particleSystem.I

@@ -48,25 +48,18 @@ clear_to_initial() {
 }
 }
 
 
 /**
 /**
- * Causes system to use birth rate set by set_birth_rate()
- */
-INLINE void ParticleSystem::
-soft_start(PN_stdfloat br) {
-  if (br > 0.0)
-    set_birth_rate(br);
-  _cur_birth_rate = _birth_rate;
-  _tics_since_birth = 0.0f;
-}
-
-/**
- * Causes system to use birth rate set by set_birth_rate(), with the system's
- * first birth being delayed by the value of first_birth_delay. Note that a
- * negative delay is perfectly valid, causing the first birth to happen
+ * Causes system to use birth rate set by set_birth_rate().
+ * If first_birth_delay is specified, it specifies the number of seconds to wait
+ * in addition to the birth rate before the first particle is birthed.  It is
+ * legal for this to be a negative value, which causes the first birth to happen
  * sooner rather than later.
  * sooner rather than later.
  */
  */
 INLINE void ParticleSystem::
 INLINE void ParticleSystem::
 soft_start(PN_stdfloat br, PN_stdfloat first_birth_delay) {
 soft_start(PN_stdfloat br, PN_stdfloat first_birth_delay) {
-  soft_start(br);
+  if (br > 0.0) {
+    set_birth_rate(br);
+  }
+  _cur_birth_rate = _birth_rate;
   _tics_since_birth = -first_birth_delay;
   _tics_since_birth = -first_birth_delay;
 }
 }
 
 

+ 1 - 2
panda/src/particlesystem/particleSystem.h

@@ -96,8 +96,7 @@ PUBLISHED:
   INLINE void induce_labor();
   INLINE void induce_labor();
   INLINE void clear_to_initial();
   INLINE void clear_to_initial();
   INLINE void soft_stop(PN_stdfloat br = 0.0);
   INLINE void soft_stop(PN_stdfloat br = 0.0);
-  INLINE void soft_start(PN_stdfloat br = 0.0);
-  INLINE void soft_start(PN_stdfloat br, PN_stdfloat first_birth_delay);
+  INLINE void soft_start(PN_stdfloat br = 0.0, PN_stdfloat first_birth_delay = 0.0);
   void update(PN_stdfloat dt);
   void update(PN_stdfloat dt);
 
 
   virtual void output(std::ostream &out) const;
   virtual void output(std::ostream &out) const;