mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-06 03:44:00 -04:00
fix LODNode startup
This commit is contained in:
parent
26a50769af
commit
97fbcbd507
@ -292,6 +292,7 @@ CData(const LODNode::CData ©) :
|
|||||||
_switch_vector(copy._switch_vector),
|
_switch_vector(copy._switch_vector),
|
||||||
_lowest(copy._lowest),
|
_lowest(copy._lowest),
|
||||||
_highest(copy._highest),
|
_highest(copy._highest),
|
||||||
|
_bounds_seq(UpdateSeq::old()),
|
||||||
_got_force_switch(copy._got_force_switch),
|
_got_force_switch(copy._got_force_switch),
|
||||||
_force_switch(copy._force_switch),
|
_force_switch(copy._force_switch),
|
||||||
_num_shown(copy._num_shown)
|
_num_shown(copy._num_shown)
|
||||||
@ -304,7 +305,11 @@ CData(const LODNode::CData ©) :
|
|||||||
// Description:
|
// Description:
|
||||||
////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////
|
||||||
INLINE LODNode::Switch::
|
INLINE LODNode::Switch::
|
||||||
Switch(float in, float out) : _shown(false) {
|
Switch(float in, float out) :
|
||||||
|
_shown(false),
|
||||||
|
_bounds_seq(UpdateSeq::old()),
|
||||||
|
_verify_ok(false)
|
||||||
|
{
|
||||||
set_range(in, out);
|
set_range(in, out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -208,7 +208,7 @@ operator ++ () {
|
|||||||
if (priv_is_special(new_seq)) {
|
if (priv_is_special(new_seq)) {
|
||||||
// Oops, wraparound. We don't want to confuse the new value
|
// Oops, wraparound. We don't want to confuse the new value
|
||||||
// with our special cases.
|
// with our special cases.
|
||||||
new_seq = (PN_int32)SC_old;
|
new_seq = (PN_int32)SC_old + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_THREADS
|
#ifdef HAVE_THREADS
|
||||||
@ -220,7 +220,7 @@ operator ++ () {
|
|||||||
if (priv_is_special(new_seq)) {
|
if (priv_is_special(new_seq)) {
|
||||||
// Oops, wraparound. We don't want to confuse the new value
|
// Oops, wraparound. We don't want to confuse the new value
|
||||||
// with our special cases.
|
// with our special cases.
|
||||||
new_seq = (PN_int32)SC_old;
|
new_seq = (PN_int32)SC_old + 1;
|
||||||
}
|
}
|
||||||
result = AtomicAdjust::compare_and_exchange(_seq, old_seq, new_seq);
|
result = AtomicAdjust::compare_and_exchange(_seq, old_seq, new_seq);
|
||||||
}
|
}
|
||||||
@ -243,7 +243,7 @@ operator ++ (int) {
|
|||||||
if (priv_is_special(new_seq)) {
|
if (priv_is_special(new_seq)) {
|
||||||
// Oops, wraparound. We don't want to confuse the new value
|
// Oops, wraparound. We don't want to confuse the new value
|
||||||
// with our special cases.
|
// with our special cases.
|
||||||
new_seq = (PN_int32)SC_old;
|
new_seq = (PN_int32)SC_old + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_THREADS
|
#ifdef HAVE_THREADS
|
||||||
@ -255,7 +255,7 @@ operator ++ (int) {
|
|||||||
if (priv_is_special(new_seq)) {
|
if (priv_is_special(new_seq)) {
|
||||||
// Oops, wraparound. We don't want to confuse the new value
|
// Oops, wraparound. We don't want to confuse the new value
|
||||||
// with our special cases.
|
// with our special cases.
|
||||||
new_seq = (PN_int32)SC_old;
|
new_seq = (PN_int32)SC_old + 1;
|
||||||
}
|
}
|
||||||
result = AtomicAdjust::compare_and_exchange(_seq, old_seq, new_seq);
|
result = AtomicAdjust::compare_and_exchange(_seq, old_seq, new_seq);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user